第一篇:軟件開發人員面試問題(經典)
軟件開發人員面試問題(經典)想雇到搞軟件開發的聰明人可不容易。萬一一不小心,就會搞到一堆低能大狒狒。我去年就碰到這種事了。你肯定不想這樣吧。聽我的,沒錯。在樹上開站立會議門都沒有。
問點有難度的問題能幫你把聰明人跟狒狒們分開。我決定把我自己整理出來的軟件開發者面試百問發出來,希望能幫到你們的忙。
這個列表涵蓋了軟件工程知識體系中定義的大多數知識域。當然,如果你只想找出類拔萃的程序員,便只需涉及結構、算法、數據結構、測試這幾個話題。如果想雇架構師,也可以只考慮需求、功能設計、技術設計這些地方。
不過不管你怎么做,都要牢記一點:
這里大多數問題的答案都沒有對錯之分!
你可以把我的這些問題作為引子,展開討論。例如下面有個問題是使用靜態方法或是單例的緣由。如果那個面試的就此展開長篇大論,那他很有可能是個聰明能干的家伙!如果他一臉茫然的看著你,發出這種聲音,很明顯這就是只狒狒了。同樣,想知道一個數是不是2的乘方也有很多方法,不過要是面試的人想用mod運算符,嗯……你知道我的意思吧。(你不知道也沒關系,來根香蕉?)
需求
你能給出一些非功能性(或者質量)需求的例子么?
如果客戶需要高性能、使用極其方便而又高度安全,你會給他什么建議?
你能給出一些用來描述需求的不同技術么?它們各自適用于什么場景?
需求跟蹤是什么意思?什么是向前追溯,什么是向后追溯?
你喜歡用什么工具跟蹤需求?
你怎么看待需求變化?它是好是壞?給出你的理由。
你怎樣研究需求,發現需求?有哪些資源可以用到?
你怎么給需求制定優先級?有哪些技術?
在需求過程中,用戶、客戶、開發人員各自的職責是什么?
你怎么對待不完整或是令人費解的需求?
功能設計
在功能設計中有哪些隱喻?給出幾個成功的例子。
如果有些功能的執行時間很長,怎么能讓用戶感覺不到太長的等待?
如果用戶必須要在一個很小的區域內,從一個常常的列表中選擇多個條目,你會用什么控件?
有哪些方法可以保證數據項的完整?
建立系統原型有哪些技術?
應用程序怎樣建立對用戶行為的預期?給出一些例子。
如何入手設計一組數量龐大而又復雜的特性,你能舉出一些設計思路嗎?
有一個列表,其中有10個元素,每個元素都有20個字段可以編輯,你怎樣設計這種情況?如果是1000個元素,每個元素有3個字段呢?
用不同的顏色對一段文本中的文字標記高亮,這種做法有什么問題?
Web環境和環境各有些什么限制?
技術設計
什么是低耦合和高聚合?封裝原則又是什么意思?
在Web應用中,你怎樣避免幾個人編輯同一段數據所造成的沖突?
你知道設計模式嗎?你用過哪些設計模式?在什么場合下用的?
是否了解什么是無狀態的業務層?長事務如何與之相適應?
在搭建一個架構,或是技術設計時,你用過幾種圖?
在N層架構中都有哪些層?它們各自的職責是什么?
有哪些方法可以確保架構中數據的正確和健壯?
面向對象設計和面向組件設計有哪些不同之處?
怎樣在數據庫中對用戶授權、用戶配置、權限管理這幾項功能建模?
怎樣按照等級制度給動物王國(包括各種物種和各自的行為)建模?
程序設計
你怎樣保證你的代碼可以處理各種錯誤事件?
解釋一下什么是測試驅動開發,舉出極限編程中的一些原則。
看別人代碼的時候,你最關心什么地方?
什么時候使用抽象類,什么時候使用接口?
除了IDE以外,你還喜歡哪些必不可少的工具?
你怎么保證代碼執行速度快,而又不出問題?
什么時候用多態,什么時候用委派?
什么時候使用帶有靜態成員的類,什么時候使用單例?
你在代碼里面怎么提前處理需求的變化?給一些例子。
描述一下實現一段代碼的過程,從需求到最終交付。
算法
怎樣知道一個數字是不是2的乘方?怎樣判斷一個數是不是奇數?
怎樣找出鏈表中間的元素?
怎樣改變10,000個靜態HTML頁面中所有電話號碼的格式?
舉出一個你所用過的遞歸的例子。
在散列表和排序后的列表中找一個元素,哪個查找速度最快?
不管是書、雜志還是網絡,你從中所學到的最后一點算法知識是什么?
怎樣把字符串反轉?你能不用臨時的字符串么?
你愿意用什么類型的語言來編寫復雜的算法?
有一個數組,里面是從1到1,000,000的整數,其中有一個數字出現了兩次,你怎么找出那個重復的數字?
你知道“旅行商問題(Traveling Salesman Problem)”么?
數據結構
怎樣在內存中實現倫敦地鐵的結構?
怎樣以最有效的方式在數據庫中存儲顏色值?
隊列和堆棧區別是什么?
用堆或者棧存儲數據的區別是什么?
怎樣在數據庫中存儲N維向量?
你傾向于用哪種類型的語言編寫復雜的數據結構?
21的二進制值是什么?十六制值呢?
不管是書、雜志還是網絡,你從中所學到的最后一點數據結構的知識是什么?
怎樣在XML文檔中存儲足球比賽結果(包括隊伍和比分)?
有哪些文本格式可以保存Unicode字符?
測試
什么是回歸測試?怎樣知道新引入的變化沒有給現有的功能造成破壞?
如果業務層和數據層之間有依賴關系,你該怎么寫單元測試?
你用哪些工具測試代碼質量?
在產品部署之后,你最常碰到的是什么類型的問題?
什么是代碼覆蓋率?有多少種代碼覆蓋率?
功能測試和探索性測試的區別是什么?你怎么對網站進行測試?
測試套件、測試用例、測試計劃,這三者之間的區別是什么?你怎么組織測試? 要對電子商務網站做冒煙測試,你會做哪些類型的測試?
客戶在驗收測試中會發現不滿意的東西,怎樣減少這種情況的發生?
你去年在測試和質量保證方面學到了哪些東西?
維護
你用哪些工具在維護階段對產品進行監控?
要想對一個正在產品環境中被使用的產品進行升級,該注意哪些重要事項? 如果在一個龐大的文件中有錯誤,而代碼又無法逐步跟蹤,你怎么找出錯誤? 你怎樣保證代碼中的變化不會影響產品的其他部分?
你怎樣為產品編寫技術文檔?
你用過哪些方式保證軟件產品容易維護?
怎樣在產品運行的環境中進行系統調試?
什么是負載均衡?負載均衡的方式有哪些種?
為什么在應用程序的生命周期中,軟件維護費用所占的份額最高?
再造工程(re-engineering)和逆向工程(reverse engineering)的區別是什么? 配置管理
你知道配置管理中基線的含義么?怎樣把項目中某個重要的時刻凍結? 你一般會把哪些東西納入版本控制?
怎樣可以保證團隊中每個人都知道誰改變了哪些東西?
Tag和Branch的區別是什么?在什么情況下該使用tag,什么時候用branch? 怎樣管理技術文檔——如產品架構文檔——的變化?
你用什么侗劇管理項目中所有數字信息的狀態?你最喜歡哪種工具?
如果客戶想要對一款已經發布的產品做出變動,你怎么處理?
版本管理和發布管理有什么差異?
對文本文件的變化和二進制文件的變化進行管理,這二者有什么不同?
同時處理多個變更請求,或是同時進行增量開發和維護,這種事情你怎么看待? 項目管理
范圍、時間、成本,這三項中哪些是可以由客戶控制的?
誰該對項目中所要付出的一切做出估算?誰有權設置最后期限?
減少交付的次數,或是減少每個每個交付中的工作量,你喜歡哪種做法? 你喜歡用哪種圖來跟蹤項目進度?
迭代和增量的區別在哪里?
試著解釋一下風險管理中用到的實踐。風險該如何管理?
你喜歡任務分解還是滾動式計劃?
你需要哪些東西幫助你判斷項目是否符合時間要求,在預算范圍內運作? DSDM、Prince2、Scrum,這三者之間有哪些區別?
如果客戶想要的東西太多,你在范圍和時間上怎樣跟他達成一致呢?
第二篇:軟件開發人員辭職報告
尊敬的領導:
我很遺憾自己在這個時候向公司正式提出辭職申請。
來到Xx公司兩年多了,正是在這里我開始踏上了社會,完成了自己從一個學生到社會人的轉變。有過歡笑,有過收獲,也有過淚水和痛苦。公司平等的人際關系和開明的工作作風,一度讓我有著找到了依靠的感覺,在這里我能開心的工作,開心的學習。然而工作上的毫無成熟感總讓自己彷徨。
記得您曾說過,工作上如果兩年沒起色就該往自己身上找原因了。或許這真是對的,由此我開始了思索,認真的思考。盡管我一思考,上帝便會發笑,但這笑帶著一絲苦澀,思考的結果連自己都感到驚訝――或許自己并不適合軟件開發這項工作。否定自己讓自己很痛苦,然而人總是要面對現實的,自己的興趣是什么,自己喜歡什么,自己適合做什么,這一連串的問號一直讓我沮喪,也讓我萌發了辭職的念頭,并且
讓我確定了這個念頭。
或許只有重新再跑到社會上去遭遇挫折,在不斷打拼中去尋找屬于自己的定位,才是我人生的下一步選擇。從小到大一直過得很順,這曾讓我驕傲,如今卻讓自己深深得痛苦,不能自拔,也許人真的要學會慢慢長大。
能為公司效力的日子不多了,我一定會把好自己最后一斑崗位,做好項目開始前的屬于自己的所有工作,盡力讓項目做到平衡過渡。
離開,目前的公司,離開許多曾經同甘共苦的同事,很舍不得的,忘不了領導們的尊尊教誨,舍不得同事之間的那片真誠和友善。
最后也愿公司在今后的工作中發揮優勢,揚長避短,祝愿公司興旺發達。
申請人:XX
20XX年05月20日
第三篇:軟件開發人員工作總結
軟件開發人員工作總結
金秋十月是個收獲季節,希望我們每一天的生活都如這個季節一樣,又一個月過去了,現對工作中收獲與不足總結
一、工作內容
九月份的工作比較繁忙,工作重點有四方面:s6測試,醫院軟件開發、測試,售后服務,文檔書寫及培訓。
1、關于s6測試
s6的新增修改功能大約30多項內容,測試的重點如:其一,每日結賬時更正庫存的操作,此項功能涉及的方面比較多,影響數據的準確性,測試起來比較煩瑣、測試量也比較大;其二,由于業務開票時程序內部處理發生了改變,由原來的控制臺轉移到存儲過程中處理,所以對此部分也進行了重點測試;其三,飲片劃價自動批號的測試;其它方面的測試包括,gsp報表、客戶對應商品銷售、批次會員錄入以及遠程配送價格等的測試,再有就是售后人員隨時提出的問題隨時測試,如打印模塊加完打印項還是不能打印、某些模板在99pbl修改以后還是不好用、哪個報表數據是否有問題等。
2、醫院軟件開發、測試
對于新版醫院軟件的功能模塊開發工作也做出了一點貢獻,作了15個打印模塊(如入庫重打、劃價重打、盈損重打等),12個查詢模塊(入庫報表查詢、住院報表查詢、入出院費用查詢等),所做模塊包含的內容為:菜單掛接、將窗口中不需要的按鈕隱藏、書寫查詢報表中所需要的sql語句(大約60句,但語句結構并不復雜)、打印模塊及查詢模塊所需的數據窗口大約80個;測試方面,現在只是進行了表面性的測試,測試的內容包括每個窗口中的字體是否一致、按鈕是否對齊、點擊按鈕后彈出的提示是否正確、開票窗口的金額、價格、數量、庫存等的變
化情況是否正確,焦點移動問題等,現已測出的問題100多個;其它方面,修改了庫結構,將每個的表中將不允許為空的字段修改正確以及將a25、a35等字段在每個表的長度統一等。
3、售后服務
s6的售后工作,由于每日結賬時更正庫存,造成幾個客戶的庫存數據不準確,通過查詢客戶實際的數據庫找到了問題的原因,再有就是在電話中為售后人員解答一些問題;其它方面,上門服務三次,分別是,解決了先知醫療器械公司的應收應付財務問題,通勝醫藥財務軟件中輔助核算的客戶查不到,從后臺修改數據已解決問題,漢華林銷售出錯庫存未減,原因未查到;遠程及電話解決客戶提出的財務軟件、財務接口、金稅接口等問題。由于十一休息,售后人員少,在月末休息前做了兩天售后工作。
4、其它方面
s6的培訓文檔寫了兩次,其次就是書寫了加強版與s6的區別,再有就是編譯序程、備份程序、程序注冊等工作,其中程序注冊是隨時性,所以也占用一定的時間。
二、工作分析
通過的工作,自己在pb方面又懂得了一些知識,并且可以修改簡單的錯誤,也可看明白一些簡單的腳本結構,這對于我的測試工作是很有幫助的。從反饋的情況看,s6的結賬庫存更正功能還存問題,還需要加強測試。再有從售后服務的情況看,售后人員在財務方面的技術還需要加強。
三、工作計劃
1、醫院軟件測試
2、書寫醫院軟件的說明書
3、s6新增、修改功能的測試
總結人:姜波
日期:2007-09-28
2007年10月份工作總結
十月份是一個忙碌的月份,日子象流水一樣,轉眼既逝。看來學習的時間和勁頭還要在加強一些。
一、工作內容
十月份的工作比較繁忙,工作中心有六點:程序的每天備份,庫結構的比較,打印類的調試,在2種分辨率的情況下窗口的布局,程序小bug的修改,測試參數權限及遠程。
第四篇:軟件開發人員辭職信
軟件開發人員辭職信
軟件開發人員辭職信1
尊敬的領導:
我很遺憾自己在這個時候向公司正式寫出辭職報告。
來到公司也快兩年了,正是在這里我開始踏上了社會,完成了自己從一個學生到社會人的轉變。有過歡笑,有過收獲,也有過淚水和痛苦。公司平等的人際關系和開明的工作作風,一度讓我有著找到了依靠的感覺,在這里我能開心的工作,開心的學習。然而工作上的毫無成熟感總讓自己彷徨。記得肖總曾說過,工作上如果兩年沒起色就該往自己身上找原因了。或許這真是對的,由此我開始了思索,認真的思考。盡管我一思考,上帝便會發笑,但這笑帶著一絲苦澀,思考的結果連自己都感到驚訝——或許自己并不適合軟件開發這項工作。否定自己讓自己很痛苦,然而人總是要面對現實的,自己的興趣是什么,自己喜歡什么,自己適合做什么,這一連串的問號一直讓我沮喪,也讓我萌發了辭職的念頭,并且讓我確定了這個念頭。或許只有重新再跑到社會上去遭遇挫折,在不斷打拼中去尋找屬于自己的定位,才是我人生的下一步選擇。從小到大一直過得很順,這曾讓我驕傲,如今卻讓自己深深得痛苦,不能自拔,也許人真的要學會慢慢長大。
我也很清楚這時候向公司辭職于公司于自己都是一個考驗,公司正值用人之際。也正是考慮到公司今后在這個項目安排的合理性,本著對公司負責的態度,為了不讓公司因我而造成的決策失誤,我鄭重向公司提出辭職。我想在項目還未正式啟動開始之前,公司在項目安排上能做得更加合理和妥當。長痛不如短痛,或許這對公司對我都是一種解脫吧。
能為公司效力的日子不多了,我一定會把好自己最后一班崗,做好項目開始前的屬于自己的所有工作,盡力讓項目做到平衡過渡。
離開這個公司,離開這些曾經同甘共苦的同事,很舍不得,舍不得領導們的??教誨,舍不得同事之間的那片真誠和友善。
也愿公司在今后的工作中發揮優勢,揚長避短,祝愿公司興旺發達!
軟件開發人員辭職信2
尊敬的領導:
我很遺憾自己在這個時候向公司正式提出辭職申請。
來到Xx公司兩年多了,正是在這里我開始踏上了社會,完成了自己從一個學生到社會人的轉變。有過歡笑,有過收獲,也有過淚水和痛苦。公司平等的人際關系和開明的工作作風,一度讓我有著找到了依靠的感覺,在這里我能開心的工作,開心的學習。然而工作上的毫無成熟感總讓自己彷徨。
記得您曾說過,工作上如果兩年沒起色就該往自己身上找原因了。或許這真是對的,由此我開始了思索,認真的思考。盡管我一思考,上帝便會發笑,但這笑帶著一絲苦澀,思考的.結果連自己都感到驚訝――或許自己并不適合軟件開發這項工作。否定自己讓自己很痛苦,然而人總是要面對現實的,自己的興趣是什么, 自己喜歡什么,自己適合做什么,這一連串的問號一直讓我沮喪,也讓我萌發了辭職的念頭,并且
讓我確定了這個念頭。
或許只有重新再跑到社會上去遭遇挫折,在不斷打拼中去尋找屬于自己的定位,才是我人生的下一步選擇。從小到大一直過得很順,這曾讓我驕傲,如今卻讓自己深深得痛苦,不能自拔,也許人真的要學會慢慢長大。
能為公司效力的日子不多了,我一定會把好自己最后一斑崗位,做好項目開始前的屬于自己的所有工作,盡力讓項目做到平衡過渡。
離開,目前的公司,離開許多曾經同甘共苦的同事,很舍不得的,忘不了領導們的諄諄教誨,舍不得同事之間的那片真誠和友善。
最后也愿公司在今后的工作中發揮優勢,揚長避短,祝愿公司興旺發達。
申請人:XX
20xx年05月20日
軟件開發人員辭職信3
尊敬的領導:
我很遺憾自己在這個時候向公司正式提出辭職申請。
來到Xx公司兩年多了,正是在這里我開始踏上了社會,完成了自己從一個學生到社會人的轉變。有過歡笑,有過收獲,也有過淚水和痛苦。公司平等的人際關系和開明的工作作風,一度讓我有著找到了依靠的感覺,在這里我能開心的工作,開心的學習。然而工作上的毫無成熟感總讓自己彷徨。
記得您曾說過,工作上如果兩年沒起色就該往自己身上找原因了。或許這真是對的,由此我開始了思索,認真的思考。盡管我一思考,上帝便會發笑,但這笑帶著一絲苦澀,思考的結果連自己都感到驚訝――或許自己并不適合軟件開發這項工作。否定自己讓自己很痛苦,然而人總是要面對現實的,自己的興趣是什么, 自己喜歡什么,自己適合做什么,這一連串的問號一直讓我沮喪,也讓我萌發了辭職的念頭,并且讓我確定了這個念頭。
或許只有重新再跑到社會上去遭遇挫折,在不斷打拼中去尋找屬于自己的定位,才是我人生的下一步選擇。從小到大一直過得很順,這曾讓我驕傲,如今卻讓自己深深得痛苦,不能自拔,也許人真的要學會慢慢長大。
能為公司效力的日子不多了,我一定會把好自己最后一斑崗位,做好項目開始前的屬于自己的所有工作,盡力讓項目做到平衡過渡。
離開,目前的公司,離開許多曾經同甘共苦的同事,很舍不得的,忘不了領導們的教誨,舍不得同事之間的那片真誠和友善。
最后也愿公司在今后的工作中發揮優勢,揚長避短,祝愿公司興旺發達。
此致
敬禮
申請人:xxx
日期:xxxx年xx月xx日
第五篇:2016軟件開發人員辭職報告
2016軟件開發人員辭職報告
辭職報告又稱辭職信、辭職書、辭呈等。它是員工向所在單位或上級主管部門提交的請求解除勞動合同關系的實用文體,是國家機關、人民團體或企事業單位人才管理和人事工作環節中常用的一種事務性文書。《中華人民共和國勞動法》第24條明確規定:“當事人雙方可以協商解除勞動合同”。這種“協商解除勞動合同”正常而便捷的方式就是遞交辭職報告和批準辭職請求。下面是小編為你提供的最新的標準辭職報告模板,僅供參考!更多標準辭職報告請上出國留學辭職報告范文網。(本文為你提供辭職報告范本兩篇。)
##第1篇: 尊敬的領導: 您好!20xx年X月X日我來到X公司,正式成為X公司的一員。我知道,公司給了我成長的機會,往后也會給我更多的發展空間,這是金錢不能衡量的。可是通過這段時間的工作,我發覺自己對這工作缺少一份熱情,缺少一股干勁。慢慢地我開始思考自己是否適合在這一行業發展,能否勝任往后的工作。現在由于我私人種種原因,父母為我安排了另一份工作,同時我也想到外面的社會鍛煉一下自己。經過反復的考慮,所以我決定辭職。
我也很清楚這時候向公司辭職于公司于自己都是一個考驗。公司正值用人之際,Xx項目啟動,所有的前續工作在公司上下極力重視下一步步推進。也正是考慮到公司今后在這個項目安排的合理性,本著對公司負責的態度,為了不讓公司因我而造成的決策失誤,我鄭重向公司提出辭職。我想在項目還未正式啟動開始之前,公司在項目安排上能做得更加合理和妥當。長痛不如短痛,或許這對公司對我都是一種解脫吧。
我懷著十分復雜的心情寫這封辭職信,由于我個人感覺,我在過去的一段時間里的表現不能讓自己感覺滿意,感覺有些愧對公司這兩年的照顧,自己也感覺自己在過去兩年沒有給公司做過點貢獻,也由于自己感覺自己的能力還差的很多,在公司的各方面需求上自己能力不夠。所以,經過自己慎重考慮,為了自己和公司考慮,自己現向公司提出辭職,望公司給予批準。
非常遺憾的向XX申請辭職!辭職人:xxx ##第2篇:
敬愛的xxx/xxx:
我很遺憾自己在這個時候向公司正式寫出辭職報告。
來到Xx公司也快兩年了,正是在這里我開始踏上了社會,完成了自己從一個學生到社會人的轉變。有過歡笑,有過收獲,也有過淚水和痛苦。公司平等的人際關系和開明的工作作風,一度讓我有著找到了依靠的感覺,在這里我能開心的工作,開心的學習。然而工作上的毫無成熟感總讓自己彷徨。記得肖總曾說過,工作上如果兩年沒起色就該往自己身上找原因了。或許這真是對的,由此我開始了思索,認真的思考。盡管我一思考,上帝便會發笑,但這笑帶著一絲苦澀,思考的結果連自己都感到驚訝――或許自己并不適合軟件開發這項工作。否定自己讓自己很痛苦,然而人總是要面對現實的,自己的興趣是什么,自己喜歡什么,自己適合做什么,這一連串的問號一直讓我沮喪,也讓我萌發了辭職的念頭,并且讓我確定了這個念頭。或許只有重新再跑到社會上去遭遇挫折,在不斷打拼中去尋找屬于自己的定位,才是我人生的下一步選擇。從小到大一直過得很順,這曾讓我驕傲,如今卻讓自己深深得痛苦,不能自拔,也許人真的要學會慢慢長大。我也很清楚這時候向公司辭職于公司于自己都是一個考驗。公司正值用人之際,Xx項目啟動,所有的前續工作在公司上下極力重視下一步步推進。也正是考慮到公司今后在這個項目安排的合理性,本著對公司負責的態度,為了不讓公司因我而造成的決策失誤,我鄭重向公司提出辭職。我想在項目還未正式啟動開始之前,公司在項目安排上能做得更加合理和妥當。長痛不如短痛,或許這對公司對我都是一種解脫吧。
能為公司效力的日子不多了,我一定會把好自己最后一班崗,做好項目開始前的屬于自己的所有工作,盡力讓項目做到平衡過渡。
離開這個公司,離開這些曾經同甘共苦的同事,很舍不得,舍不得領導們的諄諄教誨,舍不得同事之間的那片真誠和友善。
也愿公司在今后的工作中發揮優勢,揚長避短,祝愿公司興旺發達!歡迎登陸辭職報告范文網查看更多