不想做業務的技術控該選什麼樣的公司?
有問有答是程式視界的一個免費問答欄目,感興趣的朋友,可以按照下面的方式參與:
發郵件給 [email protected],標題註明“有問有答”。
描述你的困惑或者問題。
我每週會慎重回答一個問題並整理成文章,(週四晚上)釋出在訂閱號程式視界內。
安老師您好:
我是一名工作了不到2年的java程式設計師,平時也做一些前端的工作,座標西安,西安理工大學本科畢業。目前所在的公司偏重業務一些,但我本人是個技術控,樂於接觸各種新技術,而且現在公司的發展前景有點堪憂,所以準備跳槽。對新工作有以下幾點期望(排序越靠前,是越看重的):
工作方向前景向好
工作方向越偏重技術越好
公司規模越大越好(因為自己還年輕,想著公司規模大的話,對於自己後續的發展更好些)
能在西安最好
不知道安老師是否可以推薦一些工作方向及公司?
先簡單說說技術和業務的關係:
技術的目的,是為了解決業務問題
不存在純粹的技術性工作,所有技術性工作,最終目的必然是為了解決業務問題
如果有些工作看起來像純粹的技術,那只是業務分層的需要,這種所謂純粹的技術,它要實現的業務,是更上層的技術中間層或業務抽象層
技術只有落地到業務,才能獲得更好的應用和發展,否則要麼消亡,要麼藏在深閨無人識
技術的變革可以促進業務的發展
業務的發展也可以引發技術的變革
下面是我畫的一張軟體分層圖,能幫助我們更好的理解業務和技術的關係:
寬泛一點講,每一層軟體都有業務——它的上層。只是我們更多時候所說的業務,是指的應用層業務,即和終端使用者需求相關的那部分。
很多人所討厭的業務,就是應用層業務。這是因為這部分業務變化比較頻繁,今天加一個功能,明天刪一個功能,今天介面這麼設計,明天介面那麼設計,今天加一條查詢語句,明天添一個儲存過程……就這麼改來該去,感覺技術沒什麼長進,成長變緩。
但實際上,開發者的成長,有三個維度:技術、業務、軟實力。哪個維度都可以很好的成長,打造出亮點,都可以行走江湖。
只不過,開發者對成長的感知,是分階段的。
工作 5 年以下的小夥伴,因為工作中往往是執行層面的事情多,是在別人規劃好的框架內完成特定任務,所以往往更關心技術。
工作稍久一點,5年、8年,一般都成了團隊骨幹、Leader,需要帶專案、帶人,格局更大一些,關注點開始向業務傾斜,因為不瞭解業務就無法更好的開發軟體。與此同時,軟實力,比如設計、架構、溝通、協同、組織等等,也開始變得重要,因為要帶人帶團隊從更高層面把握軟體,這是必須的。
工作再久一點,成了研發經理、總監,業務和軟實力這兩個維度的重要性,會大過技術。
扯遠了,我們回來,結合前面的軟體分層圖來看看,假如你確確實實不願意關心“業務”層面的事情,在找工作時,可以有哪些選擇。
答案是明顯的,選擇提供 1、2、3、4、5 這5層軟體的公司,就會遠離應用層的業務。如果西安沒有這幾類的公司,也可以考慮大公司的特定部門。
至於什麼樣的公司有1、2、3、4、5這幾類相關的崗位,招聘網站搜一搜,從JD中就可以看出來。
◇
我曾經寫過一篇文章,專門討論開發和技術的關係:
建議看看。
◇
如果正在找工作,我的Chat——“如何系統有效準備一場面試”,立刻幫到你!來!識別下圖二維碼,給自己開個小灶。