海康威视实习总结
前言
? ? ? ? ·在杭州海康威視實(shí)習(xí)了大概40多天,因?yàn)樯眢w的原因(在杭州有點(diǎn)水土不服),秋招還有一些學(xué)校的事情,準(zhǔn)備下個(gè)星期大概滿50天就離職了(雖然但是,未滿兩個(gè)月不能報(bào)銷路費(fèi)),寫個(gè)帖子對這段實(shí)習(xí)經(jīng)歷做個(gè)總結(jié)。
實(shí)習(xí)前
? ? ? ? 先簡單自我介紹一下,本人專業(yè)背景是通信專業(yè),因?yàn)橐恍┐蠹叶贾赖脑驈拇蟾叛幸幌戮烷_始學(xué)java,在研二寒假時(shí)就有打算在秋招前的暑假看能不能找個(gè)實(shí)習(xí),但苦于準(zhǔn)備的不充分,一直拖到了4月中旬才開始投實(shí)習(xí)簡歷,大大小小的筆試做了快20家,自己覺得做的好的筆試經(jīng)常沒有后續(xù),最后也是海康的暑期實(shí)習(xí)一路通過了,所以也是很感謝海康給的這次實(shí)習(xí)機(jī)會。
????????發(fā)一下自己的海康實(shí)習(xí)筆經(jīng)面經(jīng),因?yàn)闀r(shí)間過了一個(gè)多月,很多問題沒有記錄已經(jīng)忘記了,但還是想給想投海康實(shí)習(xí)的同學(xué)做個(gè)參考。
筆經(jīng)
????????海康的后端實(shí)習(xí)筆試是相對來說比較簡單的,不像很多公司一樣要做算法題,只有選擇題和問答題。選擇題的單選多選都是類似牛客上的java選擇題,刷過一些的人應(yīng)該沒什么問題的。問答題我記得的大概是一個(gè)sql語句,一個(gè)關(guān)于某種設(shè)計(jì)模式的分析,還有一道不太記得了,但是也不難。
面經(jīng)
? ? ? ? 根據(jù)我同組的一個(gè)前端實(shí)習(xí)生的消息,他是有兩輪專業(yè)面試的,但我當(dāng)時(shí)只有一輪主管面就到了hr面,主管面大概是50個(gè)人,等到hr面的時(shí)候只有10個(gè)人左右了。寫一些我能回憶起來的問題。
主管面:
????????1、java是怎么學(xué)習(xí)的,學(xué)校里有學(xué)過嗎?
? ? ? ????????? 我回答的自學(xué)的,說了一些自學(xué)的方法。
? ? ? ? 2、java中集合能說一下嘛?arraylist,hashmap結(jié)構(gòu),擴(kuò)容之類的
? ? ? ? ? ? ? ? 當(dāng)時(shí)應(yīng)該是回答上來了,但是主管沒有問具體的問題,讓你說你知道的
? ? ? ? 3、java8新特性了解嘛?有實(shí)際使用過嘛?
? ? ? ? ? ? ? ? 我回答的函數(shù)式編程,lambda表達(dá)式、stream流,但當(dāng)時(shí)對java8的新特性就是有個(gè)了解,知道有這幾樣?xùn)|西,lambda表達(dá)式在某些學(xué)習(xí)場景中用過,stream流完全沒使用過,后來在實(shí)習(xí)期間居然就遇到了stream流的一些問題。
? ? ? ? 4、spring的一些問題,循環(huán)依賴之類的
? ? ? ? 5、數(shù)據(jù)庫使用過嗎?mysql、redis。索引結(jié)構(gòu)之類的問題
? ? ? ? 6、一些開放性的問題,比如服務(wù)器宕機(jī)怎么排查之類的。后面的記不清楚了
HR面:
? ? ? ? hr小姐姐問了一些學(xué)校里的項(xiàng)目,組里人員多少,任務(wù)如何分配,有沒有很大壓力的情況,根據(jù)回答展開問。問你為什么選擇杭州,手上有幾個(gè)offer之類的問題。總之展現(xiàn)出你非常想要去的決心就可以了。hr面后大概1個(gè)星期就打電話過來通知hr面通過了,發(fā)了意向書,問你來不來,來的話確定入職時(shí)間與住宿方式。
????????這里有兩個(gè)比較重要的點(diǎn),一是入職時(shí)間雖然可以自己任意選擇,但實(shí)習(xí)時(shí)間未滿兩個(gè)月不能報(bào)銷路費(fèi),暑期實(shí)習(xí)生至少滿兩個(gè)月才有轉(zhuǎn)正答辯,日常實(shí)習(xí)生是沒有轉(zhuǎn)正資格的。我提前離職所以沒有報(bào)銷也沒有轉(zhuǎn)正答辯了,除了文章開頭的原因,還有些別的原因。首先并不是滿2個(gè)月就可以轉(zhuǎn)正答辯,通知里寫的是根據(jù)你的實(shí)習(xí)情況,有可能實(shí)習(xí)三個(gè)月才能有轉(zhuǎn)正答辯,另一個(gè)原因是和住宿有關(guān),實(shí)習(xí)期你可以選擇自住和公司住宿,自住公司會每個(gè)月補(bǔ)貼一千多塊,盡管相比于杭州的租價(jià)來說,可能沒什么太大的作用。公司住宿的話,會安排你到公司包的酒店中去住,雙人間,但空氣不好,非常潮濕,樓層低的可能沒有窗戶,本身就有些水土不服,在公司宿舍中待久了就會身體不舒服,所以推薦身體一般的同學(xué)選擇自住。
實(shí)習(xí)中
????????第一周? ? ? ?
????????我是7月4號入職的,入職后找到自己部門所在的樓層,見過主管后,主管會安排導(dǎo)師,就可以根據(jù)導(dǎo)師的安排開始工作了。第一周主要是熟悉工作流程,在公司下發(fā)的電腦上裝一些會使用到的環(huán)境及軟件,如idea,ssh工具M(jìn)obaXterm,數(shù)據(jù)庫連接工具DBeaver,網(wǎng)絡(luò)抓包wireshark,遠(yuǎn)程連接工具向日葵等等,熟悉部門在開發(fā)的軟件以及它的一些組件,包括公司的一些開發(fā)需要用到的一些網(wǎng)站以及公司的wiki百科等等。在服務(wù)器上自己去安裝組里正在開發(fā)的軟件平臺,學(xué)會一些正在開發(fā)的平臺需要的配置。導(dǎo)師會把你拉入git,拉取代碼后,根據(jù)軟件的功能去看一下業(yè)務(wù)代碼的結(jié)構(gòu)。
? ? ? ? 第二周
? ? ? ? 在熟悉了一些后,組內(nèi)正在做升級,導(dǎo)師就安排我和另外一個(gè)日常實(shí)習(xí)生去修復(fù)版本存在的漏洞,學(xué)習(xí)了如何遠(yuǎn)程連接服務(wù)器啟動本地服務(wù)進(jìn)行測試。這個(gè)星期也移植了一些別的版本分支的api對外接口到正在升級的分支上。
? ? ? ? 第三周
? ? ? ? 在繼續(xù)上周對各組件漏洞的修復(fù)工作外,客戶方面反映了一個(gè)現(xiàn)場問題,技術(shù)支持無法解決就報(bào)到了后端這邊,問題是上報(bào)數(shù)據(jù)不準(zhǔn)確,用向日葵遠(yuǎn)程連接了客戶現(xiàn)場的環(huán)境后,調(diào)出日志,發(fā)現(xiàn)日志打印的上報(bào)時(shí)間與數(shù)據(jù)庫的上報(bào)時(shí)間不對應(yīng),后來發(fā)現(xiàn)是時(shí)區(qū)出現(xiàn)了問題,現(xiàn)場問題成功解決。在工作的時(shí)候,出現(xiàn)多次服務(wù)無法啟動的問題,在正式員工的幫助下通過日志、斷點(diǎn)等進(jìn)行排查,發(fā)現(xiàn)組件底層由多個(gè)構(gòu)架組成,在進(jìn)一個(gè)方法時(shí)沒有進(jìn)預(yù)想的構(gòu)架的方法,在配置文件中指定使用的架構(gòu)后解決問題。另一次服務(wù)無法啟動的情況是本地配置文件沒有配置consul,無法遠(yuǎn)程調(diào)用。
? ? ? ? 第四周
? ? ? ? 第四周和我一組的后端實(shí)習(xí)生離職了,接下了他剩余的工作繼續(xù)完成。在修改缺陷的時(shí)候又出現(xiàn)了服務(wù)無法啟動的問題,排查日志后發(fā)現(xiàn)feign的版本導(dǎo)致的,修改feign版本后解決。在打補(bǔ)丁包的時(shí)候補(bǔ)丁包無法構(gòu)建成功,排查發(fā)現(xiàn)新的版本增加了數(shù)據(jù)庫字段,添加sql文件后補(bǔ)丁包構(gòu)建成功。同時(shí)本周安排了一個(gè)定制任務(wù),客戶提出了四項(xiàng)新需要添加的功能,從svn上拉取了任務(wù)代碼后,根據(jù)客戶的定制單開始功能定制。歷時(shí)一周,寫完定制的接口與外部api后,與同組新入職的前端新員工進(jìn)行聯(lián)調(diào),經(jīng)過我們間遇到的各種各樣的問題,總算在交付前聯(lián)調(diào)通過。代碼與文檔發(fā)給部署人員進(jìn)行部署,但在現(xiàn)場時(shí),服務(wù)無法啟動,排查后發(fā)現(xiàn)部署人員沒有執(zhí)行需要執(zhí)行的sql腳本。后面盡管服務(wù)啟動成功后,客戶對功能提出了新的要求,修改了兩天,逐漸和定制單上的要求完全不一樣了(笑)。
? ? ? ? 第五周
? ? ? ? 第五周進(jìn)行平臺門戶的配置時(shí)發(fā)現(xiàn)無法配置,排查后發(fā)現(xiàn)token == null,打斷點(diǎn)排查后發(fā)現(xiàn)是路由的問題,根據(jù)wiki進(jìn)行修改后無果,詢問了應(yīng)用構(gòu)架開發(fā)的員工后一起進(jìn)行了排查,發(fā)現(xiàn)是某個(gè)組件的版本迭代后,代碼的拼接與原本的不同,導(dǎo)致uri不同,最后導(dǎo)致不能配置,根據(jù)組件的資源包中的路徑修改后端代碼后問題解決。
? ? ? ? 第六周
? ? ? ? 也就是本周,組件進(jìn)入了提測環(huán)節(jié),多的不行的自測與缺陷需要進(jìn)行修改,最后一周的工作應(yīng)該就是自測與修復(fù)后端bug缺陷。
總結(jié)
? ? ? ? 短暫的實(shí)習(xí)時(shí)間讓我學(xué)習(xí)到了很多生產(chǎn)環(huán)境下的工作以及可能遇到的情況,使我不是閉門造車,讓我對這個(gè)行業(yè)有了更多的了解。感謝在杭州實(shí)習(xí)期間遇到的所有人,感謝同組實(shí)習(xí)生們對我的幫助,感謝正式員工們對我無窮無盡問題的耐心,感謝這段經(jīng)歷!
總結(jié)
- 上一篇: fork()使用(一)
- 下一篇: FGUI踩坑指南