有這么個(gè)普遍現(xiàn)象
測(cè)試招聘者,特別是一、二線互聯(lián)網(wǎng)公司的招聘者最苦惱的事兒就是招人。想找到一個(gè)合適的人難于上青天,每天各種撒網(wǎng),簡(jiǎn)歷看幾百份,面大幾十人,能撈到一個(gè)中意的小伙伴就謝天謝地了。但同時(shí)很多測(cè)試小伙伴發(fā)現(xiàn)找工作很難,特別是進(jìn)大一點(diǎn)的廠,他們特別挑:代碼要會(huì)寫(xiě),要有軟件架構(gòu)能力,問(wèn)一大坨平時(shí)根本用不到的技術(shù)問(wèn)題,還挑經(jīng)驗(yàn),挑溝通能力,挑這挑那,有時(shí)候還特么挑學(xué)歷、挑年齡。。。 供求總難以匹配起來(lái),造成了雙方都很痛苦。
Why?
能力要求不匹配是最核心的問(wèn)題。軟件、互聯(lián)網(wǎng)近20年來(lái)飛速成長(zhǎng),其實(shí)也經(jīng)歷了很多階段。行業(yè)軟件興盛階段和外包興盛階段(2000-2010年)行業(yè)進(jìn)入了大量的測(cè)試人員,當(dāng)時(shí)最主流的測(cè)試實(shí)踐是:重心放在系統(tǒng)驗(yàn)收階段。測(cè)試人員的主要工作基本都投入在了基于業(yè)務(wù)的黑盒測(cè)試上,對(duì)代碼能力、系統(tǒng)理解的能力要求不多。2010年后,互聯(lián)網(wǎng)行業(yè)的真正興起讓國(guó)內(nèi)軟件開(kāi)發(fā)模式開(kāi)始緩慢調(diào)頭,快速迭代的模式逐步興起,開(kāi)發(fā)周期越來(lái)越短,迭代越來(lái)越快,但系統(tǒng)越來(lái)越越龐大、復(fù)雜。原來(lái)的測(cè)試工作模式和工作范圍越來(lái)越無(wú)法滿足要求了。但大量從業(yè)人員技能范圍轉(zhuǎn)變是一件很難的事情,行業(yè)是有巨大慣性的。從宏觀上看大量QA技能轉(zhuǎn)變跟不上需求轉(zhuǎn)變是造成市場(chǎng)供求不匹配的主要原因。
So What?
三個(gè)觀點(diǎn):1. 只做手工測(cè)試,不懂系統(tǒng)實(shí)現(xiàn)的測(cè)試工程師的職業(yè)發(fā)展會(huì)越來(lái)越受限。2. 能夠轉(zhuǎn)型成適應(yīng)市場(chǎng)需求的同學(xué)將在近幾年的時(shí)間獲得超額回報(bào)(因?yàn)槭袌?chǎng)供不應(yīng)求,企業(yè)不得不抬高價(jià)格來(lái)尋找這樣的人)。3.對(duì)于個(gè)體來(lái)說(shuō),自我成長(zhǎng)永遠(yuǎn)最重要,自己永遠(yuǎn)要對(duì)自己的發(fā)展負(fù)責(zé),別依賴外部環(huán)境,自己想辦法變成市場(chǎng)的香餑餑才靠譜。
到底什么樣的人搶手?
按照我一點(diǎn)理解講一講什么樣子的人會(huì)搶手吧,限于篇幅會(huì)偏重技術(shù)角度來(lái)講。
測(cè)試的底子-項(xiàng)目經(jīng)驗(yàn)
有比較復(fù)雜系統(tǒng)的測(cè)試實(shí)戰(zhàn)經(jīng)驗(yàn),你就超過(guò)了50%以上的應(yīng)聘者。什么叫做比較復(fù)雜系統(tǒng)呢?投入50人年開(kāi)發(fā)出來(lái)的系統(tǒng)就可以稱(chēng)作一個(gè)復(fù)雜系統(tǒng)了。因此,復(fù)雜系統(tǒng)并不是很罕見(jiàn)。但是,如果你只接觸一個(gè)簡(jiǎn)單的模塊,甚至只是測(cè)試一個(gè)穩(wěn)定模塊的維護(hù)性開(kāi)發(fā),而不是通盤(pán)理解,不能說(shuō)是測(cè)試過(guò)復(fù)雜系統(tǒng)。有從頭到尾接觸一個(gè)完整項(xiàng)目的經(jīng)歷很寶貴。
測(cè)試的底子-基礎(chǔ)知識(shí)
對(duì)照三本書(shū):《ISTQB基礎(chǔ)教程》 《高級(jí)軟件測(cè)試設(shè)計(jì)》 《高級(jí)軟件測(cè)試管理》(后兩本是ISTQB的高級(jí)認(rèn)證教程)。這里邊的內(nèi)容你都能熟練應(yīng)用(真的是熟練應(yīng)用,而不只是有概念),你就能超過(guò)80%以上的應(yīng)聘者了。面試過(guò)數(shù)百人,我經(jīng)常會(huì)問(wèn)幾個(gè)問(wèn)題:如果測(cè)試時(shí)間不夠,你會(huì)怎么辦? 如果讓你去測(cè)試一個(gè)你完全不熟悉的系統(tǒng),你會(huì)怎么辦?你平時(shí)會(huì)使用那些測(cè)試設(shè)計(jì)方法? 看似很稀松平常的問(wèn)題,非常考驗(yàn)人。因?yàn)榇蟛糠謴臉I(yè)者都沒(méi)有經(jīng)受過(guò)系統(tǒng)訓(xùn)練和學(xué)習(xí),工作多年,依然技能不足,意識(shí)跑偏。
熟練使用一門(mén)主語(yǔ)言
滿足這條,你就超過(guò)了70%的應(yīng)聘者。什么叫做熟練呢?拿Java來(lái)說(shuō)吧:系統(tǒng)學(xué)習(xí)過(guò)Java的教程,高頻面試50題?這樣的題可以自測(cè)一下,可以回答上35個(gè)以上;熟悉最主流的Spring框架,能夠?qū)懗鲆粋€(gè)簡(jiǎn)單的網(wǎng)站,實(shí)現(xiàn)基礎(chǔ)的Restful 服務(wù);讀懂過(guò)一個(gè)測(cè)試框架,如mockito或者Junit的源碼;能夠熟練實(shí)施接口測(cè)試(基于一些測(cè)試框架 如:rest-assured+Junit);能夠讀懂開(kāi)發(fā)的業(yè)務(wù)代碼,對(duì)他們的代碼進(jìn)行Code Review;
對(duì)一門(mén)語(yǔ)言有比較深入了解
滿足這條,你就超過(guò)了90%的應(yīng)聘者。什么叫有深入了解呢?還拿Java來(lái)說(shuō)吧:熟練使用Java的常見(jiàn)API;深入理解基于語(yǔ)言特性/系統(tǒng)特性的知識(shí),如Collections的實(shí)現(xiàn)機(jī)制、類(lèi)型系統(tǒng)、I/O、網(wǎng)絡(luò)、多線程等;熟知設(shè)計(jì)模式(廣義范圍的設(shè)計(jì)模式,不局限于GOF的設(shè)計(jì)模式);熟悉JVM的工作模式;熟練使用調(diào)試排查工具解決性能問(wèn)題;熟練掌握市面上常見(jiàn)的腳手架;熟練掌握周邊知識(shí)(OPs相關(guān),網(wǎng)絡(luò)知識(shí)相關(guān))有不錯(cuò)的實(shí)戰(zhàn)開(kāi)發(fā)經(jīng)驗(yàn)(做過(guò)真正被生產(chǎn)檢驗(yàn)的東西);對(duì)于測(cè)試開(kāi)發(fā),AOP,Java字節(jié)碼技術(shù)是很重要的知識(shí)。。。 這是一個(gè)很長(zhǎng)的學(xué)習(xí)list,需要幾年時(shí)間來(lái)養(yǎng)成。做到這點(diǎn),其實(shí)你可以勝任普通的開(kāi)發(fā)崗位了,這也是高級(jí)測(cè)試開(kāi)發(fā)崗位的技術(shù)底子。
在一個(gè)領(lǐng)域知識(shí)有不錯(cuò)的了解
人不可能什么都懂,但工作幾年之后,會(huì)在工作的域內(nèi)一定要有積累才行。
例如,你測(cè)試一個(gè)核心電商系統(tǒng)的交易模塊三年了,業(yè)務(wù)上你一定要熟練講出來(lái):商品列表、購(gòu)物車(chē)、下單、退單、廢單、支付、發(fā)貨、庫(kù)存、退款、優(yōu)惠使用等等一坨業(yè)務(wù)流程,和可能出現(xiàn)的常見(jiàn)的坑(各類(lèi)問(wèn)題產(chǎn)生的資損、各類(lèi)問(wèn)題產(chǎn)生的服務(wù)不可用、邏輯矛盾),不然根本無(wú)法體現(xiàn)你經(jīng)驗(yàn)沉淀和深入思考;技術(shù)角度上,你要能夠畫(huà)得出來(lái)系統(tǒng)的交互圖,熟悉最核心的接口和最核心的參數(shù),能夠讀懂開(kāi)發(fā)的代碼,熟練使用trace和監(jiān)控工具,診斷定位線上問(wèn)題到代碼行。
用技術(shù)保障質(zhì)量的能力
測(cè)試開(kāi)發(fā)崗一定會(huì)問(wèn)到一個(gè)問(wèn)題:你能夠舉一個(gè)你用技術(shù)手段提高測(cè)試效率,增強(qiáng)測(cè)試能力的例子么?這是面試時(shí)最大的一個(gè)坎。?很多人會(huì)講一些自動(dòng)化測(cè)試回歸的例子,但是真正成功的例子非常少,因?yàn)闉槭裁醋觯趺醋龆紱](méi)有想好就照網(wǎng)上一個(gè)教程攢了一個(gè),結(jié)果變成了玩具。 做好自動(dòng)化,不僅僅是會(huì)使用工具、框架,其實(shí)要對(duì)被測(cè)物特性,軟件生命周期有很深的理解并且有很強(qiáng)的開(kāi)發(fā)知識(shí)才行。實(shí)際上,在環(huán)境、CI、數(shù)據(jù)、測(cè)試用例生成、數(shù)據(jù)比對(duì)的很小的一些點(diǎn)上,都能有不錯(cuò)的提效產(chǎn)出,從這些點(diǎn)能夠做得好,會(huì)得到不錯(cuò)的加分。有一個(gè)不錯(cuò)的成功案例,你勝出的幾率就超過(guò)了80%,沒(méi)有短板,就十拿九穩(wěn)了。
技能以外的東西- 實(shí)戰(zhàn)案例
以前的工作印證了你的能力。能夠講清楚一件特別拿得出手的工作,證明你能力的案例是面試時(shí)候最有用的投名狀。
技能以外的東西 - 你的個(gè)人特質(zhì)
一般有如下特質(zhì)會(huì)大大加分:快速學(xué)習(xí)、系統(tǒng)性學(xué)習(xí)、學(xué)以致用、系統(tǒng)性思考、強(qiáng)大的推動(dòng)力、技術(shù)思維、突出的溝通能力、條理性、抗壓性、樂(lè)觀精神、抗挫折能力、迅速調(diào)整的能力、迭代改進(jìn)的意識(shí)、ownership、團(tuán)隊(duì)合作、愿景和規(guī)劃。?這些特性體現(xiàn)人的內(nèi)核,有強(qiáng)大內(nèi)核的人,做什么都行,技能暫時(shí)不足,也一定能補(bǔ)足。所以,在招聘的時(shí)候往往對(duì)是否錄用的判斷起決定性作用
高段位要求(高級(jí)職位需求)
計(jì)算機(jī)領(lǐng)域知識(shí)的通盤(pán)理解
這條范圍非常大,人不可能什么都懂。但最最基礎(chǔ)的知識(shí)是不能有盲點(diǎn)的:
操作系統(tǒng)工作基礎(chǔ)原理與基礎(chǔ)操作:如linux,要通讀過(guò)linux操作系統(tǒng)的書(shū),熟悉最基本的概念,基本命令要熟悉,shell要能寫(xiě)和讀;
網(wǎng)絡(luò)知識(shí)特別是TCP/IP, HTTP知識(shí):推薦兩本書(shū) 《圖解tcp/ip》 《圖解Http》這兩本書(shū)里的東西要懂。
數(shù)據(jù)庫(kù)知識(shí):市面常見(jiàn)數(shù)據(jù)庫(kù)(redis,mysql,oracle)的常見(jiàn)DBA操作,問(wèn)題排查;SQL的熟練使用;
Web及移動(dòng)端知識(shí):能夠懂HTML,CSS,能夠讀懂Javascript代碼,能夠讀懂Android或者iOS的代碼,做簡(jiǎn)單開(kāi)發(fā)最好。
安全知識(shí):常見(jiàn)的安全防護(hù)方法、工具使用;基本的安全攻防原理;
軟件工程/開(kāi)發(fā)過(guò)程管理:實(shí)戰(zhàn)中各種磨練,建議系統(tǒng)的學(xué)習(xí)PMP,敏捷開(kāi)發(fā)的一些認(rèn)證課程。
在一個(gè)域的深耕
人不可能什么都懂,但在一個(gè)領(lǐng)域是需要深耕的。比如,在做了四、五年移動(dòng)端測(cè)試以后。android和iOS都要具備一定的開(kāi)發(fā)能力了,能讀懂開(kāi)發(fā)的業(yè)務(wù)代碼是最基礎(chǔ)的,能夠代替開(kāi)發(fā)實(shí)現(xiàn)部分業(yè)務(wù)功能,完成部分組件開(kāi)發(fā)是個(gè)非常好的自檢點(diǎn)。能夠?qū)σ苿?dòng)端自動(dòng)化工具棧、監(jiān)控工具棧(如友盟、bugly、newrelic等)、內(nèi)存泄露檢測(cè)、卡頓檢測(cè)、耗電量、弱網(wǎng)、流量、埋點(diǎn)、灰度、版本控制、兼容性、用戶體驗(yàn)、安全等等的質(zhì)量保障方案有通盤(pán)搞定能力。
什么叫搞定呢?舉個(gè)例子:比如,使用多種手段把崩潰率降低到千分之一以下。對(duì)于一個(gè)小團(tuán)隊(duì),這是個(gè)很不容易實(shí)現(xiàn)的坎。做到這點(diǎn),你需要了解如何收集崩潰率,如何使用一系列工具來(lái)定位核心問(wèn)題,如何推動(dòng)開(kāi)發(fā)改動(dòng),并且預(yù)防(靜態(tài)代碼掃描工具引入,阻止亂用第不成熟的第三方插件,代碼reivew防止常見(jiàn)pattern如空指針引發(fā)的崩潰,推動(dòng)開(kāi)發(fā)養(yǎng)成良好的log習(xí)慣,推動(dòng)移動(dòng)端防御性編程編程開(kāi)發(fā)習(xí)慣,推動(dòng)后端開(kāi)發(fā)按照規(guī)范吐接口,幫助開(kāi)發(fā)引入內(nèi)存泄露、卡頓工具,趨勢(shì)報(bào)表,警鐘長(zhǎng)鳴,各種灰度方式設(shè)置,線上監(jiān)控。。。一個(gè)數(shù)據(jù)的改觀,背后要有大量的質(zhì)量相關(guān)工作)。
使用綜合手段來(lái)保障軟件質(zhì)量提升效能的能力。
聽(tīng)起來(lái)很抽象,舉幾個(gè)例子吧。
例子1:你所在的team總在被開(kāi)發(fā)抱怨測(cè)試用的時(shí)間太長(zhǎng)。如何能縮短一下測(cè)試時(shí)間呢?
通過(guò)調(diào)研,發(fā)現(xiàn)測(cè)試小伙伴詬病的最多的就是環(huán)境不可用。環(huán)境到底多不可用呢?
你基于Grafana和Prometheus做了一個(gè)環(huán)境可用的監(jiān)控報(bào)表,使用后,發(fā)現(xiàn)環(huán)境在工作日整體可用率只有35%左右,主要原因是:幾個(gè)核心熱點(diǎn)應(yīng)用經(jīng)常掛了沒(méi)人管。
你拉了整個(gè)team,明確了部署責(zé)任人,約定了部署規(guī)則:只能中午飯和晚飯時(shí)間部署,并且部署后要自己看一下是不是OK。
一周后,環(huán)境可用度上升到了65%。再深入分析,發(fā)現(xiàn)2個(gè)同學(xué)不守規(guī)矩,總是他們?cè)谄茐囊?guī)則,你去找他們單獨(dú)談話。
一周后,環(huán)境可用度上升到了80%。還是有少量人不守規(guī)矩。
你找SRE的同學(xué)提需求,做了部署卡點(diǎn),非部署時(shí)間部署必須TL審批。
一周后,環(huán)境可用度上升到了85%。有些TL也不守規(guī)矩。
你建了個(gè)報(bào)警,環(huán)境亂部署,壞掉了,在大團(tuán)隊(duì)的群里@全體,告知誰(shuí)搞壞了環(huán)境。
一周后,環(huán)境可用度達(dá)到了92%。
你加了一個(gè)feature:應(yīng)用掛了一段時(shí)間無(wú)人響應(yīng),自動(dòng)重啟服務(wù)功能,仍然有問(wèn)題,就自動(dòng)回滾上一版本。
你推動(dòng)了開(kāi)發(fā)解決了某個(gè)應(yīng)用啟動(dòng)時(shí)間過(guò)長(zhǎng)的問(wèn)題。
你推動(dòng)了環(huán)境分組。
你推動(dòng)了測(cè)試環(huán)境版本上線的規(guī)范流程實(shí)施。
你推動(dòng)了冒煙自動(dòng)化用例卡點(diǎn)。
你推動(dòng)了環(huán)境部署人備份機(jī)制。
你推動(dòng)了全員基礎(chǔ)環(huán)境部署培訓(xùn)。
你總結(jié)了部署手冊(cè)。
你做了。。。。。
最后,環(huán)境可用度穩(wěn)定到了97%以上。你為測(cè)試節(jié)省了60%以上block時(shí)間(原來(lái)可用度未35%)
例子2:上面的問(wèn)題,除了環(huán)境,還有一個(gè)槽點(diǎn):開(kāi)發(fā)提測(cè)質(zhì)量不高。測(cè)試的頭幾天,很多主流程都走不通,導(dǎo)致測(cè)試總是在等待,或者是跟著開(kāi)發(fā)一起聯(lián)調(diào)。而這段時(shí)間,已經(jīng)被習(xí)慣性的認(rèn)為是測(cè)試時(shí)間了,因?yàn)椋?b>提測(cè)了。
你推動(dòng)了:測(cè)試提供冒煙用例,開(kāi)發(fā)必須完成一定程度的自測(cè)才能提測(cè)。
你推動(dòng)了:測(cè)試和開(kāi)發(fā)做自動(dòng)化同期共建,在開(kāi)發(fā)過(guò)程中,核心功能就被自動(dòng)化用例保護(hù)起來(lái)了。
你推動(dòng)了:開(kāi)發(fā)切分feature提測(cè),而不是攢一個(gè)大招一下子提一坨。
你推動(dòng)了:代碼Codereview變成團(tuán)隊(duì)常規(guī)活動(dòng),QA在早期跟進(jìn)核心代碼,把問(wèn)題坑殺在萌芽階段。
你推動(dòng)了:外部資源聯(lián)調(diào)非常早的進(jìn)行,不會(huì)讓它在測(cè)試后期成為測(cè)試blocker。
。。。
例子3:你發(fā)現(xiàn)測(cè)試時(shí)間長(zhǎng),QA自己也有問(wèn)題。
你推動(dòng)了:有明確的測(cè)試計(jì)劃,并讓所有干系人都有明確的預(yù)期。
你推動(dòng)了:測(cè)試依據(jù)風(fēng)險(xiǎn)測(cè)試,最大的風(fēng)險(xiǎn)得到最快的cover,科學(xué)分配時(shí)間,明顯縮短bug反饋時(shí)間弧。
你推動(dòng)了:bug嚴(yán)格管理,所有重要bug都及時(shí)修復(fù)。
你推動(dòng)了:良好的溝通和匯報(bào)機(jī)制,每天讓團(tuán)隊(duì)主要干系人清晰的知道,距離發(fā)布還差多遠(yuǎn)。
你推動(dòng)了。。。。
你能講出自己做過(guò)5個(gè)以上這樣的成功例子,我敢保障,你會(huì)被1線大廠瘋搶。職級(jí)基本都是專(zhuān)家起。
持續(xù)學(xué)習(xí)能力和復(fù)雜問(wèn)題解決能力
例子1:
你近期的工作是幫助團(tuán)隊(duì)提升后臺(tái)服務(wù)穩(wěn)定性。你看到了netflix內(nèi)部使用一個(gè)叫做ChaosMonkey的東西來(lái)隨機(jī)對(duì)生產(chǎn)服務(wù)期進(jìn)行攻擊,而逼迫工程師提高穩(wěn)定性,所以,你也實(shí)現(xiàn)了類(lèi)似(更溫和)的內(nèi)部機(jī)制,推動(dòng)團(tuán)隊(duì)穩(wěn)定性的提高。
你怎么知道這個(gè)叫做ChaosMonkey的東西呢? 因?yàn)槟銜?huì)習(xí)慣性瀏覽一線廠商的技術(shù)博客,參與行業(yè)大會(huì),關(guān)注各類(lèi)新技術(shù)。持續(xù)性的養(yǎng)成習(xí)慣。
例子2:
做大規(guī)模接口自動(dòng)化好難,外部數(shù)據(jù)依賴太難搞,參數(shù)構(gòu)造太費(fèi)勁,assert太難寫(xiě)。如果能夠簡(jiǎn)單的錄制回放就好了。
但是,外部依賴是個(gè)天坑,寫(xiě)操作mock也是個(gè)天坑,assert也是個(gè)天坑。
實(shí)際的案例是,經(jīng)過(guò)幾年多個(gè)團(tuán)隊(duì)持續(xù)不屑的填坑,阿里內(nèi)部已經(jīng)有應(yīng)用級(jí)的錄制回放工具了,數(shù)百個(gè)應(yīng)用成功的是用了它,把不可能回歸的任務(wù)變成了可能(上萬(wàn)數(shù)量級(jí)的case當(dāng)天生成,當(dāng)天投入使用,并可以分析覆蓋率),自動(dòng)化測(cè)試實(shí)施需要付出的工作時(shí)間革命性降低(不足原來(lái)付出時(shí)間的10%)。
你能講出自己做過(guò)5個(gè)以上這樣的成功例子,我敢保障,你也會(huì)被1線大廠瘋搶。職級(jí)基本都是專(zhuān)家起。
其它能力?測(cè)試是個(gè)萬(wàn)金油,高階一些的職位需要什么都要會(huì)一些?,因?yàn)樵礁唠A的職位需要解決的問(wèn)題越綜合,需要打交道的人的種類(lèi)越多。不然很容易變成你職業(yè)短板,做個(gè)list吧(一定不全):
很好的項(xiàng)目管理能力,至少與開(kāi)發(fā)經(jīng)理能力同級(jí),甚至要強(qiáng)于他。
一定的軟件架構(gòu)能力。
一定的產(chǎn)品sense:可以跟一個(gè)資深的產(chǎn)品經(jīng)理能夠順暢的交流,明白知道他為什么會(huì)這么想,所要實(shí)現(xiàn)產(chǎn)品的意義,路徑;從產(chǎn)品質(zhì)量方面的考慮要超過(guò)產(chǎn)品經(jīng)理,給他輸出。
極好的溝通能力。
團(tuán)隊(duì)管理能力(這個(gè)太重要)
目標(biāo)管理能力
有一個(gè)好的內(nèi)核(上面提到過(guò))
怎么轉(zhuǎn)型/怎么進(jìn)階?
其實(shí)不難,沒(méi)有什么高端的方法。下面這4條就夠了,核心秘密就是堅(jiān)持不懈。
熟悉你的被測(cè)系統(tǒng),熟悉你的被測(cè)系統(tǒng),熟悉你的被測(cè)系統(tǒng)。?能夠從技術(shù)、業(yè)務(wù)角度做到對(duì)被測(cè)系統(tǒng)熟悉是做一個(gè)好QA的最基本職業(yè)素養(yǎng),也是能力提升的最主要源泉。
自檢點(diǎn):我能夠畫(huà)出系統(tǒng)的架構(gòu)圖么?我能夠讀懂開(kāi)發(fā)的代碼么?我熟悉常見(jiàn)的業(yè)務(wù)監(jiān)控系統(tǒng)么?熟悉日志系統(tǒng)么?知道開(kāi)發(fā)是如何調(diào)試和定位問(wèn)題的么?給我一個(gè)線上問(wèn)題,我能定位么?我能給別人完整的介紹這個(gè)域的核心業(yè)務(wù)么?我能自己直接動(dòng)手發(fā)布上線一個(gè)系統(tǒng)么?知道如何回滾么?灰度是如何做的? 我知道所有關(guān)鍵的技術(shù)點(diǎn)么,如一個(gè)交易的冪等性是如何實(shí)現(xiàn)的?我在團(tuán)隊(duì)中有:“這家伙對(duì)系統(tǒng)最熟”的口碑么?
如果自檢點(diǎn)全部是否定答案。。。 花一年時(shí)間把它全變成肯定答案。這一過(guò)程,你一定被迫學(xué)到了很多很多,并且獲得了極為長(zhǎng)足的成長(zhǎng),這是進(jìn)階的必由之路,也是卡了很多人的地方。?如果說(shuō)做不到,后面不用看了,前面的也全部忘掉吧。
方法:通讀所有文檔,強(qiáng)迫自己讀代碼,積極參與開(kāi)發(fā)所有討論,不懂的狂問(wèn),觀察開(kāi)發(fā)如何上線,如何排查問(wèn)題,模仿,學(xué)習(xí),善用搜索引擎,總結(jié)。。。
找到問(wèn)題解決問(wèn)題,找到問(wèn)題解決問(wèn)題,找到問(wèn)題解決問(wèn)題。?你一定有一堆問(wèn)題,如果你覺(jué)得自己做得挺好,沒(méi)有問(wèn)題要解決,那必然是你自己有巨大的問(wèn)題!
自檢點(diǎn):找一支筆,寫(xiě)出你覺(jué)得質(zhì)量方面,你的team的10個(gè)問(wèn)題,做排序。排出最重要的3個(gè)。
方法:找到top3的問(wèn)題,選一個(gè),列個(gè)接話,去解決。如果找不出來(lái),使勁去觀察,然后去看看做的好的同行,比比你比人家差在哪里。嘗試去解決這些問(wèn)題,從小問(wèn)題,能夠見(jiàn)到效果的問(wèn)題入手,設(shè)置一個(gè)時(shí)間點(diǎn)。你真正解決了5個(gè)以上問(wèn)題以后,感覺(jué)一定會(huì)有。
系統(tǒng)學(xué)習(xí),系統(tǒng)學(xué)習(xí),系統(tǒng)學(xué)習(xí)
自檢點(diǎn):我系統(tǒng)的學(xué)過(guò)一門(mén)知識(shí)么?我能講清楚我這么操作,我寫(xiě)的這行代碼的原理么?
方法:從工作出發(fā),確認(rèn)你需要補(bǔ)足哪些知識(shí)。從網(wǎng)上找一個(gè)具體知識(shí)的學(xué)習(xí)路線圖,訂個(gè)計(jì)劃,照著來(lái)。 參加學(xué)習(xí)小組,找到幫你解決難題的人,多請(qǐng)他吃飯,多請(qǐng)教他。獲取知識(shí)后,馬上回到工作中做檢驗(yàn)。還是學(xué)以致用才能有所增長(zhǎng)。結(jié)合工作來(lái)系統(tǒng)學(xué)習(xí)的效果是最好的。
再舉個(gè)例子:
上家公司有個(gè)小伙伴(他應(yīng)該也會(huì)泡這個(gè)社區(qū)),開(kāi)始應(yīng)聘的時(shí)候,他說(shuō)熟悉jenkins,用的很多。所以第一份工作是:把所有CI的日常工作交給了他,并告知2個(gè)月內(nèi)要全部搞定。 他一下懵逼了,原來(lái)那些不深入的理解支撐不了工作要求。后來(lái)他每天死磕,看了jenkins所有的文檔(對(duì),幾乎所有文檔通讀了一遍),翻了無(wú)數(shù)問(wèn)題的解決帖子,記錄了上百個(gè)問(wèn)題解決的過(guò)程,寫(xiě)了上百篇jenkins的小blog(現(xiàn)在還沒(méi)公布出來(lái))。幾個(gè)月以后,他比我熟了,他的一項(xiàng)基礎(chǔ)能力成長(zhǎng)為:可以獨(dú)自給一個(gè)小公司完整的搞定前端、后端、移動(dòng)端的一整套CI解決方案。其實(shí)單憑這一套,就能找到不錯(cuò)的工作了。這是依托工作,系統(tǒng)性學(xué)習(xí)的結(jié)果。
看到有同學(xué)說(shuō)要裸辭,去接受培訓(xùn)。我的建議是,別這樣。裸辭你就失去了學(xué)以致用的陣地,失去了真正解決問(wèn)題的機(jī)會(huì),還失去了資金來(lái)源。依托工作,自主學(xué)習(xí)是王道。自己饒過(guò)不去坎,其實(shí)有很多網(wǎng)上教程和非脫產(chǎn)培訓(xùn)班啊。
選擇有挑戰(zhàn)的團(tuán)隊(duì),選擇有挑戰(zhàn)的團(tuán)隊(duì) 自檢點(diǎn):在團(tuán)隊(duì)里有很多人比我強(qiáng)么?周?chē)耐露际俏遗宸拿??我做的事兒有挑?zhàn)么? 方法:如果這三點(diǎn)都是否定的,并且你處于職業(yè)生涯的早期。也許(只是也許),你該考慮一下?lián)Q個(gè)團(tuán)隊(duì)了。
總結(jié)
偏重技能角度講了講市場(chǎng)的需求和QA如何做如何滿足市場(chǎng)需求。行文倉(cāng)促,認(rèn)識(shí)有限,其實(shí)也并沒(méi)有什么新東西。
如果對(duì)軟件測(cè)試感興趣的小伙伴,可以來(lái)加群:747981058 。歡迎大家來(lái)一起交流學(xué)習(xí)~