應(yīng)屆畢業(yè)生如何成為一名服務(wù)器端開發(fā)工程師(一)

畫個圖很重要

服務(wù)器端開發(fā)是開發(fā)者中技術(shù)性偏強,對邏輯思維要求更高的一個細(xì)分方向,不同于前端,移動端等等,后者很多在做偏UI的事情,而服務(wù)器端處理的只有邏輯和業(yè)務(wù)。所以從長遠(yuǎn)的職業(yè)規(guī)劃來講,從事服務(wù)端開發(fā)作為技術(shù)道路的起點對長期是很有利的。

web服務(wù)器端根據(jù)服務(wù)的種類會逐漸細(xì)分:小型公司小型業(yè)務(wù)一般是簡單工程化,簡單部署,開發(fā)選型多種多樣(php,Java,Python,Node.js...)這時候招的服務(wù)端主要還是看對語言的熟悉程度,一般要求是快速搞定。

中到大型公司隨著業(yè)務(wù)復(fù)雜度上升開始進(jìn)行架構(gòu)上的拆分,做一些服務(wù)化,中間件,近些年又有專門做數(shù)據(jù)分析(大數(shù)據(jù),機器學(xué)習(xí))的數(shù)據(jù)分析師,其實也是從服務(wù)器端演化出來的。在一些公司中甚至web容器的業(yè)務(wù)邏輯開發(fā)(本人做的事情)被稱為前端,而真正的后端是做數(shù)據(jù)分析、推薦系統(tǒng)、算法支持等等。這時候招聘web服務(wù)端往往要求業(yè)務(wù)架構(gòu)能力,如何解耦和模塊化一個工程,如何做分布式。

內(nèi)功篇

實際上普通的web服務(wù)端開發(fā)掌握個語言,學(xué)兩個框架基本就可以上手了,但是后續(xù)提高必須很好的掌握所有相關(guān)基礎(chǔ),這個基礎(chǔ)就包括了協(xié)議層(TCP/IP),操作系統(tǒng)知識。

比如大流量下如何配置nginx服務(wù)器參數(shù)? 流量進(jìn)來服務(wù)器會有各種各樣的問題:連接恢復(fù)的連接風(fēng)暴、高并發(fā)秒殺型應(yīng)用如何做限流、內(nèi)存吃緊如何優(yōu)化、連接數(shù)cpu內(nèi)存各種被占滿如何分析瓶頸在哪?這時候只知道幾個框架的人完全是一頭霧水,必須從計算機的更底層去分析原因。

初入職場先只能面試普通服務(wù)器端開發(fā)(非資深)攢點項目經(jīng)驗,形成自己的一套分析問題的方法論,設(shè)計和架構(gòu)一個復(fù)雜系統(tǒng)的經(jīng)驗。

內(nèi)功包括:

某一方向的服務(wù)器端語言和成熟框架:

建議傳統(tǒng)一點的,比如Java,PHP。一些前沿的還不穩(wěn)定不適合你玩,比如Python、Node.js(Javascript)、GO、scala。必須精通,沒得商量。
常用框架需要精通,否則招你進(jìn)去沒法快速上手干活也不會招你。
如Java棧的需要了解Spring, MyBatis, 容器Tomcat,Jetty

擴展
分布式RabbitMQ(ActiveMQ), zookeeper ,hadoop目測以后會成為必備技能,做了解。工具類jar包apache系列:common-lang.jar, common-io.jar, common-bean.jar。搜索ElasticSearch(lucene, solr)
Python棧的需要了解django, Flask 至少其一
PHP棧我只知道一個Lavarel,囧

適當(dāng)?shù)娜珬?/strong>全棧是趨勢,起碼要懂一點頁面的東西,包括html, Javascript, css
常用的JavaScript框架和標(biāo)準(zhǔn):CommonJs, jQuery, Bootstrap
擴展(選擇性了解):Angular, React, vue, Backbone, zepto (適可而止,一入前端深似海)

相關(guān)工具

協(xié)作:Git使用

數(shù)據(jù)庫

MySQL必須精通,沒得商量。nosql需要了解:MongoDB, Redis, Memcached 原理和基本部署方式和使用方式。

復(fù)習(xí)數(shù)據(jù)結(jié)構(gòu)和基本算法

這個程度的面試是會考鏈表、棧、二叉樹、B+樹、快速排序的,不能答不出來。

設(shè)計模式

需要精通常用幾個,了解大部分。比如工廠模式、狀態(tài)模式、命令模式、裝飾模式……

網(wǎng)絡(luò)基礎(chǔ)和操作系統(tǒng)

TCP/IP協(xié)議,unix系統(tǒng)使用經(jīng)驗,shell編程等等。。如果你能說出unix的基本啟動過程,還有常見的分析問題所用的一些命令,如sar,free,du,top,awk,sed等,Java棧的有jmap,jstat,jstack等應(yīng)該有加分。

應(yīng)聘技巧-簡歷篇

  1. 專業(yè)名詞的拼寫不要出錯,不要寫java,要寫Java。不要寫mysql,要寫MySQL。

  2. 不要一大堆精通xx。看到這種簡歷我直接pass,摸不清他的底,還得面試好好問問,簡歷沒方向還不知道怎么問。精通什么就是什么,可以寫具體一點,比如精通Java可以寫精通哪一部分,是socket還是多線程?不了解的就不要寫上去了。

  3. 簡歷中做足對對方公司的準(zhǔn)備。你可以詳細(xì)了解你要去那個部門是做什么的,當(dāng)前有哪些產(chǎn)品,產(chǎn)品有什么缺陷,技術(shù)的核心價值在哪,技術(shù)難點在哪,你在這上面有什么優(yōu)勢。技術(shù)一樣的情況下,hr喜歡準(zhǔn)備充分的人。

  4. 還是把基礎(chǔ)先鞏固了再去面試,前面提到幾個基礎(chǔ)知識不掌握,一般面試都會掛,除非面試官是瞎子。

先寫這么多,未來會寫寫開發(fā)面試技巧。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容