- 相關(guān)推薦
軟件工程面試常見問題
許多軟件工程師的面試都著重于技術(shù)技能,例如對(duì)編程語(yǔ)言的了解。但是,一些企業(yè)面試官還會(huì)注意你的其它一些細(xì)節(jié),下面是小編整理的軟件工程面試常見問題,希望大家喜歡。
軟件工程面試常見問題 1
1. 為什么要在一個(gè)團(tuán)隊(duì)中開展軟件測(cè)試工作?
答:軟件測(cè)試在整個(gè)團(tuán)隊(duì)中占有非常重要的地位,具體來說就是測(cè)試是一個(gè)發(fā)現(xiàn)軟件錯(cuò)誤的過程,執(zhí)行軟件測(cè)試會(huì)以最少的人力和時(shí)間,系統(tǒng)的找到軟件存在的缺陷和錯(cuò)誤,建立起開發(fā)人員和使用者對(duì)軟件的信心。
2. 您是否了解以往所工作的企業(yè)的軟件測(cè)試過程?如果了解,請(qǐng)?jiān)囀鲈谶@個(gè)過程中都有哪些工作要做?分別由哪些不同的角色來完成這些工作?
答:軟件測(cè)試部門配合系統(tǒng)分析人員軟件需求分析討論,并根據(jù)需求說明書制定《項(xiàng)目測(cè)試計(jì)劃》,編寫測(cè)試用例,建立測(cè)試環(huán)境。
軟件測(cè)試人員負(fù)責(zé)軟件開發(fā)部門的新產(chǎn)品測(cè)試及原有產(chǎn)品的升級(jí)測(cè)試,負(fù)責(zé)軟件問題解決過程跟蹤,負(fù)責(zé)軟件開發(fā)文檔開發(fā)工作的規(guī)范化及管理開發(fā)部門的產(chǎn)品文檔,制作用戶手冊(cè)及操作手冊(cè),負(fù)責(zé)產(chǎn)品的上線測(cè)試,監(jiān)督軟件開發(fā)過程的執(zhí)行,提高產(chǎn)品質(zhì)量。
3. 您是否了解以往所工作的企業(yè)的軟件開發(fā)過程?如果了解,請(qǐng)?jiān)囀鲆粋(gè)完整的開發(fā)過程需要完成哪些工作?分別由哪些不同的角色來完成這些工作?(對(duì)于軟件測(cè)試部分,可以簡(jiǎn)述)
答:需求人員連同系統(tǒng)分析人員&測(cè)試人員開會(huì)討論需求。系統(tǒng)分析人員寫出需求分析說明,并連同系統(tǒng)分析人員&測(cè)試人員&需求 人員開會(huì)討論可行性。系統(tǒng)分析人員寫出詳細(xì)設(shè)計(jì)說明書,程式人員編碼,給出系統(tǒng)流程圖。交與測(cè)試人員,測(cè)試人員給出Bug統(tǒng)計(jì)表。
4. 您在以往的測(cè)試工作中都曾經(jīng)具體從事過哪些工作?其中最擅長(zhǎng)哪部分工作?
答:從事過write test plan,creation of test case,進(jìn)行功能測(cè)試,性能測(cè)試,編寫測(cè)試工具,文檔的管理等,比較擅長(zhǎng)寫測(cè)試用例和進(jìn)行功能測(cè)試。
5. 您所熟悉的軟件測(cè)試類型都有哪些?請(qǐng)?jiān)囍謩e比較這些不同的測(cè)試類型的區(qū)別與聯(lián)系(如功能測(cè)試、性能測(cè)試……)
答:有功能測(cè)試,性能測(cè)試,可靠性測(cè)試,安全性測(cè)試,負(fù)載測(cè)試,壓力測(cè)試,安裝/卸載測(cè)試,啟動(dòng)/停止測(cè)試,兼容性測(cè)試,互連測(cè)試,文檔測(cè)試,恢復(fù)測(cè)試,回歸測(cè)試,可使用性測(cè)試,容量測(cè)試。
功能測(cè)試只對(duì)軟件的功能是否滿足用戶需求來做測(cè)試。性能測(cè)試需要和壓力和負(fù)載測(cè)試聯(lián)合起來。
6. 請(qǐng)?jiān)囍容^一下黑盒測(cè)試、白盒測(cè)試、單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試的區(qū)別與聯(lián)系。
黑盒測(cè)試:把測(cè)試對(duì)象當(dāng)成一個(gè)黑盒子,測(cè)試人員完全不考慮邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程式的需求說明書來檢查程式的功能是否滿足它的功能說明。
白盒測(cè)試:把測(cè)試對(duì)象當(dāng)成一個(gè)透明的盒子,允許測(cè)試人員利用程序內(nèi)部邏輯結(jié)構(gòu)及相關(guān)信息,設(shè)計(jì)或選擇測(cè)試用例,對(duì)程式所有邏輯路徑進(jìn)行測(cè)試。
單元測(cè)試:白盒測(cè)試的一種,對(duì)軟件設(shè)計(jì)中的單元模塊進(jìn)行測(cè)試。
集成測(cè)試:在單元測(cè)試的基礎(chǔ)上,對(duì)單元模塊之間的連接和組裝進(jìn)行測(cè)試。
系統(tǒng)測(cè)試:在所有都考慮的情況下,對(duì)系統(tǒng)進(jìn)行測(cè)試。
驗(yàn)收測(cè)試:第三方進(jìn)行的確認(rèn)軟件滿足需求的測(cè)試。
7. 測(cè)試計(jì)劃工作的目的是什么?測(cè)試計(jì)劃工作的內(nèi)容都包括什么?其中哪些是最重要的?
答:測(cè)試計(jì)劃工作是對(duì)測(cè)試工作內(nèi)容的一個(gè)有效的組織和規(guī)劃,能保證測(cè)試工作有效的展開。測(cè)試計(jì)劃工作包括測(cè)試目標(biāo),測(cè)試范圍的定義,測(cè)試方法的選擇,測(cè)試進(jìn)度里程碑,測(cè)試資源的有效配置和管理。
測(cè)試計(jì)劃工作也稱為測(cè)試策略,主要描述測(cè)試工程的總體方法和目標(biāo),描述目前在進(jìn)行那一階段的測(cè)試(單元測(cè)試,集成測(cè)試,系統(tǒng)測(cè)試)以及每一階段內(nèi)進(jìn)行的測(cè)試種類(功能測(cè)試,性能測(cè)試等)確定測(cè)試范圍,生成測(cè)試數(shù)據(jù)等。
其中軟件計(jì)劃中的測(cè)試目標(biāo)最重要,它是軟件測(cè)試所需要達(dá)成的最終結(jié)果。
8. 您認(rèn)為做好測(cè)試計(jì)劃工作的關(guān)鍵是什么?
答:
1)明確測(cè)試的目標(biāo),增強(qiáng)測(cè)試計(jì)劃的實(shí)用性
2)堅(jiān)持“5W”規(guī)則,明確內(nèi)容與過程,‘what”why”when”where”how’
3)采用評(píng)審和更新機(jī)制,保證測(cè)試計(jì)劃滿足實(shí)際需求
4)分別創(chuàng)建測(cè)試計(jì)劃與測(cè)試詳細(xì)規(guī)格、測(cè)試用例
9. 您所熟悉的測(cè)試用例設(shè)計(jì)方法都有哪些?請(qǐng)分別以具體的例子來說明這些方法在測(cè)試用例設(shè)計(jì)工作中的應(yīng)用。
答:有黑盒和白盒兩種測(cè)試種類,黑盒有等價(jià)類劃分法,邊界分析法,因果圖法和錯(cuò)誤猜測(cè)法。白盒有邏輯覆蓋法,循環(huán)測(cè)試路徑選擇,基本路徑測(cè)試。
例子:在一次輸入多個(gè)條件的完整性查詢中。利用等價(jià)類劃分法則和邊界分析法則,首先利用等價(jià)類劃分法,可以一個(gè)或多個(gè)結(jié)果是OK的測(cè)試用例,然后確認(rèn)多個(gè)NG的測(cè)試用例,然后利用邊界值分析法,可以對(duì)結(jié)果分別是OK和NG的測(cè)試用例進(jìn)行擴(kuò)展和補(bǔ)充。
10. 您認(rèn)為做好測(cè)試用例設(shè)計(jì)工作的關(guān)鍵是什么?
答:測(cè)試用例設(shè)計(jì)工作的關(guān)鍵是對(duì)可行的和不可行的都要考慮。
1)輸入
2)詳細(xì)的操作步驟
3)預(yù)期輸出
4)實(shí)際輸出。
11. 請(qǐng)以您以往的實(shí)際工作為例,詳細(xì)的描述一次測(cè)試用例設(shè)計(jì)的完整的過程。
12. 您以往的工作中是否曾開展過測(cè)試用例的評(píng)審工作?如果有,請(qǐng)描述測(cè)試用例評(píng)審的過程和評(píng)審的內(nèi)容。
13. 您以往是否曾經(jīng)從事過性能測(cè)試工作?如果有,請(qǐng)盡可能的詳細(xì)描述您以往的性能測(cè)試工作的完整過程。
14. 您在從事性能測(cè)試工作時(shí),是否使用過一些測(cè)試工具?如果有,請(qǐng)?jiān)囀鲈摴ぞ叩墓ぷ髟,并以一個(gè)具體的工作中的例子描述該工具是如何在實(shí)際工作中應(yīng)用的。
答:有使用過LoadRunner,該工具能夠錄制測(cè)試人員的操作步驟,然后對(duì)這個(gè)操作步驟模擬出多個(gè)用戶來播放出來。
1)Visural User Genertor創(chuàng)建腳本,選擇協(xié)議,錄制操作,編輯操作。
2)中央控制器(Controller)調(diào)度虛擬用戶。創(chuàng)建場(chǎng)景,選擇腳本,建立虛擬用戶,設(shè)計(jì)shedual,設(shè)置ip spoofer。
3)運(yùn)行腳本。分析shedual。
4)分析測(cè)試結(jié)果。
15. 您認(rèn)為性能測(cè)試工作的目的是什么?做好性能測(cè)試工作的關(guān)鍵是什么?
答:性能測(cè)試工作的目的是檢查系統(tǒng)是否滿足在需求說明書中規(guī)定的性能,性能測(cè)試常常需要和強(qiáng)度測(cè)試結(jié)合起來,并常常要求同時(shí)進(jìn)行軟件和硬件的檢測(cè)。
性能測(cè)試主要的關(guān)注對(duì)象是響應(yīng)時(shí)間,吞吐量,占用內(nèi)存大。ㄝo助存儲(chǔ)區(qū)),處理精度等。
16. 在您以往的工作中,一條軟件缺陷(或者叫Bug)記錄都包含了哪些內(nèi)容?如何提交高質(zhì)量的軟件缺陷(Bug)記錄?
答:檢測(cè)時(shí)間,系統(tǒng)環(huán)境,硬體環(huán)境,嚴(yán)重程度,程式版本,確認(rèn)人,功能模塊,問題描述,詳細(xì)操作步驟,是否會(huì)重現(xiàn)。
問題描述和詳細(xì)操作步驟要盡可能的詳細(xì)。Bug應(yīng)該盡量用書面語(yǔ),對(duì)于嚴(yán)重程度比較高的缺陷要在相同環(huán)境下再測(cè)試一遍。
在C/S模式下,如果條件滿足可以使用替換法來確認(rèn)是client端的問題還是server端的問題。
軟件工程面試常見問題 2
1.“為什么要成為軟件工程師?”
這是一個(gè)在面試中非常常見的問題,作為一名軟件工程師,建議通過強(qiáng)調(diào)開發(fā)熱情來回答這個(gè)問題。提及你對(duì)編碼和編程的興趣,并展示對(duì)小型個(gè)人項(xiàng)目一些看法。表達(dá)你喜歡解決復(fù)雜的問題,和技術(shù)相關(guān)的任何事物。面試官可能會(huì)通過這些來判斷你對(duì)該行業(yè)的興趣。通過你了解的最新的技術(shù),軟件設(shè)計(jì)和開發(fā)趨勢(shì),讓面試官看到你對(duì)該領(lǐng)域的熱愛。
2.“你的弱點(diǎn)是什么?”
面試官有時(shí)會(huì)問這個(gè)問題,來真正的削弱你的能力。為了證明自己的價(jià)值,請(qǐng)誠(chéng)實(shí)地回答。當(dāng)談到您的弱點(diǎn)時(shí),請(qǐng)始終積極地談?wù)撟约,并指出您正在努力改善它們。例如,如果您具有CSS的基本知識(shí),則可以說你正在學(xué)習(xí)一些UI設(shè)計(jì)的輔助技能來提高自己對(duì)UI的認(rèn)識(shí);蛘,如果您發(fā)現(xiàn)自己的領(lǐng)導(dǎo)能力達(dá)不到標(biāo)準(zhǔn),那么可以這樣說:“我是一個(gè)害羞的人,所以在管理方面有所欠缺。但我希望通過對(duì)我的專業(yè)知識(shí)更加自信來改進(jìn)它!
3.“您能描述軟件開發(fā)過程嗎?”
在軟件工程師面試期間,您面臨很多問題。其中之一可能是描述軟件開發(fā)過程。如果你確實(shí)是該領(lǐng)域的專家,則可以毫不猶豫地回答這個(gè)問題。深吸一口氣,并嘗試盡可能清楚地回答問題。表現(xiàn)出自信,證明你對(duì)開發(fā)周期了如指掌,如果時(shí)間允許,請(qǐng)使用盡可能多的細(xì)節(jié)。這將會(huì)是給你加分的一項(xiàng)。
4.“您喜歡使用哪種編程語(yǔ)言?”
這里的技巧是列出你最熟悉的編程語(yǔ)言-但要避免說您喜歡使用所有這些編程語(yǔ)言。在開發(fā)時(shí),大多數(shù)軟件工程師都有一種或多種首選語(yǔ)言。無論是JavaScript,Python還是PHP,都要提及自己喜歡的編程語(yǔ)言,并炫耀自己的熟練程度。同時(shí),最好事先研究一下面試公司的信息,以確定他們使用的語(yǔ)言。如果你的回答適合他們公司的基礎(chǔ)架構(gòu),那么這無疑是給你加分的選擇。
5.“您之前從事過哪些項(xiàng)目?”
這個(gè)問題將測(cè)試你的知識(shí),批判性思維和解決問題的能力。無論是描述個(gè)人項(xiàng)目,實(shí)習(xí)項(xiàng)目還是在上一份工作中從事過的工作,請(qǐng)確保徹底解釋自己的構(gòu)建經(jīng)驗(yàn)。這包括您采取的步驟以及做出某些決定的原因。概述可能承擔(dān)的任何風(fēng)險(xiǎn),描述任何弊端并分解項(xiàng)目?梢灾赋鰪脑擁(xiàng)目中獲得的知識(shí)以及你從中提高的某些領(lǐng)域。這證明了你對(duì)軟件工程的全面理解以及您是否能夠在公司從事類似的項(xiàng)目。
6.“您在項(xiàng)目中面臨了哪些困難?”
再一次,這個(gè)問題需要一個(gè)真誠(chéng)的答案。招聘面試官將要測(cè)試你對(duì)項(xiàng)目開發(fā)過程中可能面臨的挑戰(zhàn)的理解。如果您提到個(gè)人經(jīng)歷并說明如何克服,那么您將展示出出色的解決問題和領(lǐng)導(dǎo)能力。揭示最終用戶的反饋如何幫助您改進(jìn)和找到解決方案,以及這一挑戰(zhàn)如何使您從錯(cuò)誤中吸取教訓(xùn)。表明你不會(huì)放棄,并且可以適應(yīng)開發(fā)過程中遇到的障礙和問題。
7.“您在查看代碼時(shí)會(huì)注意什么?”
面試官可能會(huì)問您類似的問題來試圖確定你對(duì)軟件工程師職位的細(xì)節(jié)和整體責(zé)任的重視;卮饡r(shí),要盡可能清晰,簡(jiǎn)潔和有條理,以顯示出良好的知識(shí)。不過,請(qǐng)避免只列出要點(diǎn)-最好在每個(gè)答案后面都給出推理。說些類似的話:我會(huì)密切注意功能,可讀性以及代碼是簡(jiǎn)單還是混亂。還要注意代碼中可能存在的缺陷,處理哪些必須重寫或刪除的代碼。
8.“您是否在業(yè)余時(shí)間從事項(xiàng)目?如果是這樣,那是什么?
經(jīng)常在業(yè)余時(shí)間不斷學(xué)習(xí)提高技能的工程師是受歡迎的。這展示了您對(duì)工藝的真正熱情和興趣。描述您的附帶的練習(xí)項(xiàng)目,并解釋您從構(gòu)建它中學(xué)到的知識(shí)。您正在練習(xí)一種新的編程語(yǔ)言嗎?強(qiáng)調(diào)這種語(yǔ)言如何使您所申請(qǐng)的職位受益。但這并不意味你在業(yè)余時(shí)間可以來接私活,公司對(duì)于軟件開發(fā)者接私活是很排斥的,所以你有這個(gè)經(jīng)歷請(qǐng)避開。
9.“為什么選擇我們的公司?”
這是另一個(gè)出現(xiàn)幾率非常高的面試問題 ; 它需要仔細(xì)回答。面試官將需要對(duì)公司工作真正感興趣的候選人。避免提及薪水或“因?yàn)榕笥言谶@里工作”作為答案。相反,您可以說您渴望擴(kuò)大自己的行業(yè)經(jīng)驗(yàn),想要扮演更具挑戰(zhàn)性的角色,或者對(duì)他們的產(chǎn)品/服務(wù)有真正的欽佩。對(duì)他們的領(lǐng)域表現(xiàn)出興趣,并提及您的技能如何使公司受益。只要您事先對(duì)公司進(jìn)行了足夠的研究,就輕而易舉地回答這個(gè)面試問題。
10.“您能完成編程挑戰(zhàn)嗎?”
聽起來有些奇怪,這將顯示您解決問題的能力和承受壓力的能力。畢竟,軟件工程師很多時(shí)候都是在一定壓力下編寫代碼。面試官會(huì)檢查你的知識(shí),技能和經(jīng)驗(yàn),同時(shí)要考察你承受壓力的信心。鄭重鑒定的來回答這個(gè)問題,如果有類似解決問題的經(jīng)驗(yàn)可以來談一下。
軟件工程面試常見問題 3
一、技術(shù)問題
1. 介紹一下你最熟悉的編程語(yǔ)言。
2. 談?wù)勀銓?duì)面向?qū)ο缶幊痰睦斫狻?/p>
3. 介紹一下你使用過的數(shù)據(jù)庫(kù)。
4. 談?wù)勀銓?duì)數(shù)據(jù)結(jié)構(gòu)和算法的理解。
5. 介紹一下你使用過的開發(fā)工具。
二、項(xiàng)目經(jīng)驗(yàn)
1. 介紹一下你參與過的項(xiàng)目。
2. 談?wù)勀阍陧?xiàng)目中承擔(dān)的角色和職責(zé)。
3. 介紹一下你在項(xiàng)目中遇到的挑戰(zhàn)和解決方案。
4. 談?wù)勀阍陧?xiàng)目中獲得的經(jīng)驗(yàn)和教訓(xùn)。
三、解決問題的能力
1. 給我一個(gè)具體的問題,讓我看看你如何解決它。
2. 談?wù)勀阍诠ぷ髦杏龅降淖罾щy的問題,以及你是如何解決它的。
3. 如果你遇到一個(gè)你不熟悉的技術(shù)問題,你會(huì)怎么做?
4. 談?wù)勀阍趫F(tuán)隊(duì)中如何解決沖突。
四、團(tuán)隊(duì)合作精神
1. 談?wù)勀阍趫F(tuán)隊(duì)中擔(dān)任的角色。
2. 介紹一下你與團(tuán)隊(duì)成員合作的經(jīng)驗(yàn)。
3. 談?wù)勀阍趫F(tuán)隊(duì)中如何溝通和協(xié)作。
4. 如果你與團(tuán)隊(duì)成員意見不一致,你會(huì)怎么做?
五、個(gè)人職業(yè)發(fā)展規(guī)劃
1. 談?wù)勀銓?duì)軟件工程師這個(gè)職業(yè)的理解。
2. 你未來的職業(yè)發(fā)展規(guī)劃是什么?
3. 你認(rèn)為軟件工程師需要具備哪些技能和素質(zhì)?
4. 你如何提升自己的技能和素質(zhì)?
六、其他問題
1. 你為什么選擇軟件工程師這個(gè)職業(yè)?
2. 你對(duì)我們公司有什么了解?
3. 你對(duì)工作有什么期望和要求?
4. 你有什么問題要問我們嗎?
【軟件工程面試常見問題】相關(guān)文章:
面試常見問題11-04
主管面試常見問題11-27
應(yīng)聘面試的常見問題11-21
面試常見問題及回答06-20
匯豐面試常見問題12-02
博士面試常見問題06-12
面試英語(yǔ)常見問題11-06
外貿(mào)面試的常見問題10-18
外企面試的常見問題11-27