程式設計師工作以後該如何提升?
剛好最近Coding Girls 有同學問了這樣一個問題:
在現公司的開發日常已經脫離hard 模式,就是日常寫業務無壓力,程式碼品質也OK,但是寫完業務就沒事了。這樣子應該怎樣提升?
其實在工作一年多左右的時間,我也曾經提出過這樣的問題。不知道是否曾有人也有過一樣的煩惱,就是當你能夠 handle 現在的工作之後,要怎麼提升自己?這個問題無關性別,任誰都會有。所以還是想根據自己的經驗來寫寫。如若有相似之處,純屬正常。
這裡是 PHP 的社群,我們就基於 PHP 來講。相信很多剛開始接觸 PHP 的人,甚至是剛開始接觸程式碼的人,百分之七十都是先接觸的框架。比如我。 Laravel 是個極度優秀的框架,最優秀的地方在於,它能夠讓一個連 SQL 都寫不好的女同學愛上寫程式碼。許多開箱即用的工具、各種技術教程帖子使得我們不需要在深究其原理的基礎上,寫出自己的畢業設計,寫出自己在代碼世界的一丟丟自信和存在感,從此一腳邁進了程式碼世界的大門。
於是乎你帶著剛學會對框架的使用和一些在學校學得零零散散的稍微能理解的知識開始參加工作了。工作之後你突然發現自己對框架的理解還不夠深入,於是你開始從頭開始啃各種文檔:
● PHP 的文檔,了解了每個函數的使用。
● Composer 文檔,開始折騰各種潮流包。 (相關影片推薦:PHP Composer 影片教學)
● Laravel 的文檔,如何用 ORM 寫出複雜的 SQL,控制反轉到底是個什麼鬼? (相關影片推薦:2019年最新的五個Laravel影片教學推薦)
## ●Redis 的文件 ,學會它,定時任務佇列快取等優化開始不在話下。 (推薦課程:redis影片教學)
● Vue 的文檔,可能你覺得只掌握一點點前端知識還不夠,於是你又開始折騰。 (相關影片推薦:2019最新的5個vue.js影片教學精選)
甚至隨著公司業務的發展,你會開始跟著你的團隊接觸一些對你而言還很高大上的技術,微服務、分散式、讀寫分離、主從備份等等~ 甚至你還開始嘗試寫開源項目,但遲遲不肯發布。 慢慢開始覺得自己變得牛逼了,因為產品同學的需求你能很快完成了,測試同學即使提出來bug,那也是你沒好好看看需求文檔或者粗心寫錯了個符號導致的。工作變得越來越沒有難度,於是乎你開始不知足了,這時候如果公司沒能給你更多的挑戰,你就會開始想著要換份工作了。 但是一般換份挑戰無非是換個工作環境、組織、換個框架或多兼顧一個語言的事情,當你適應這一切之後,你又開始會覺得好無聊,沒有挑戰的同時又對重複勞累的加班工作產生厭倦,終於你開始連週末也不想寫代碼了。興許你會換個打發時間的事情,例如學一門樂器、談個戀愛、養個貓、實現一些 Flag ~~這樣真的好嗎? 你開始這麼問自己。即便能做很多事情,卻仍舊有很多事情是自己做不了的。你開始有種比上不足比下有餘的感覺,你開始慌了,開始覺得迷惘、不知所措。於是乎你開始抓著身邊的人問,這該怎麼辦才好?可是當有人給你換行換崗的建議時,你卻不想如此。是因為你熱愛還是因為除此之外你不知道做什麼好了? Anyway~ 我希望下面的內容能為有著同樣疑惑的你帶來些許答案。
提出疑問提出什麼疑問? ● 你的程式碼品質真的 OK 嗎?你是拿什麼來衡量自己的程式碼品質呢?拿什麼來保證介面的健全性嗎?你知道你寫的介面能承受多少請求數和並發量嗎?百萬級的數據你能 handel,千萬級甚至 PB 級呢? ● 日常寫業務無壓力?平均每寫一個功能測驗給你提多少缺陷你數過嗎?你知道你寫的功能有多少人在用嗎?你寫的功能別人用得可還順手嗎?生產上你寫的功能可曾產生過「不可能出現」的髒數據?
● 例如某天系統突然崩了十幾分鐘,CTO 和幾個技術組長出面解決了。你可曾去了解為什麼崩了?如何解決的?了解什麼程度? (例如有慢SQL,遇到慢SQL 導致系統阻塞怎麼解決,慢SQL 是怎麼產生的,平日裡要如何避免慢SQL ?怎麼根據崩了發現是慢SQL 的?)
● 把框架文檔看熟看透了就夠了嗎? Laravel 的框架為什麼要這麼設計?為什麼我們都說它好?它跟其他框架的差別在哪裡?有去翻過底層的程式碼嗎?
● PHP 函數的背後都用了什麼樣的演算法來保證其運作的高效?了解過嗎?
脫離 hard 模式,究竟是事情很 easy 還是因為你把自己置身於 easy 就算了?
積極主動
根據上面隨意提出的疑問再延伸出更多的疑問,就可以舉出大把你需要學習的內容了。
● MySQL 你真的會優化嗎?優化的原理是什麼?為什麼有些 SQL 語句邏輯相同,效能差異卻如此龐大?框架是怎麼跟資料庫連結的,事務是怎麼處理的?為什麼加了索引會讓查詢變快?如何更好的利用索引? order by 是怎麼運作的?
● Nginx 你真的會用嗎?除了拿來簡單的部署項目,你知道如何設定反向代理來實現負載平衡嗎?跨域和快取的問題該如何處理?
● Linux 熟練嗎?命令都會用了? Linux 系統中出現大量不可中斷程序和殭屍程序怎麼辦?如何迅速分析出系統CPU的瓶頸在哪裡? Linux 記憶體是怎麼運作的?進程切換的過程是怎麼樣的?磁碟 I/O 效能最佳化有幾個思路?怎麼使用 tcpdump 和 Wireshark 分析網路流量?怎麼緩解 DDoS 攻擊帶來的效能下降問題?服務吞吐量下降很厲害,怎麼分析?
接下來就不詳細列舉了,例如基本崗位技能Web 協定、Redis 等,內功心法之資料結構、演算法、設計模式等等~ 如果真的不知道自己有啥技能上的欠缺需要補充,看看自己心儀公司心儀職位的招聘簡歷唄~
提出疑問,知曉自己的缺漏,下一步就是自己想辦法補缺了。上面的問題,你知道答案嗎?此刻的你是否有複製貼上百度答案的衝動,如果還有,那就去找到答案吧!
在這個資源共享的時代,學習成本可以說幾乎是零。你能提出的疑問幾乎都有人提出過,也有人解答過。如若你需要更有系統更深入的理解,書籍、影片、課程,網路上的資源大把。買了就踏實的去看,辛苦加班賺回來的錢不要浪費了。反正沒看過厲害的人說他們是不看書的。
● 知識付費的時代,各大社區現在都多多少少有在營運相關技能的教學
● 極客、慕課也有很多深入理解底層原理的好課程
● 極客、慕課也有很多深入理解底層原理的好課程
題外話
在這裡列出一大堆學習資源可能無法保證會對你有用。更何況學習本身還帶著堅持、自律、方法這樣的標籤去將我們很現實般地劃分為三六九等~ 需要學習的東西還很多,對程式設計師而言,知識的更新速度之快是我們永遠始料未及的。有道是,路漫漫其修遠兮,不管工作了多少年,時刻想著如何去提升自己是人生的一門必修課,你不想可不行啊!
如果有需要,可以在貼文下面留言,我或社群裡的熱心的同學都會跟你分享我們學過的可能對你有用的課程、有用的書。例如網路相關的書有哪些值得一看~ 社群本身就是個很大的圈子,好好利用起來呀!
另外,一個程式設計師的成長肯定不只技術,還有職場、管理、交際圈等等~ 如若有機會,再來寫個《職業篇》吧! (因為現在暫時還不夠格呀喵~)
本文作者:JokerLinly,感謝!
相關文章推薦:
#
熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

11月14日消息,英偉達(Nvidia)在當地時間13日上午的「Supercomputing23」會議上正式發布了全新的H200GPU,並更新了GH200產品線其中,H200依然是建立在現有的HopperH100架構之上,但增加了更多高頻寬記憶體(HBM3e),從而更好地處理開發和實施人工智慧所需的大型資料集,使得運行大模型的綜合性能相比前代H100提升了60%到90%。而更新後的GH200,也將為下一代AI超級電腦提供動力。 2024年將會有超過200exaflops的AI運算能力上線。 H200

2022年3月3日,距離世界首個AI程式設計師Devin誕生不足一個月,普林斯頓大學的NLP團隊開發了一個開源AI程式設計師SWE-agent。它利用GPT-4模型在GitHub儲存庫中自動解決問題。 SWE-agent在SWE-bench測試集上的表現與Devin相似,平均耗時93秒,解決了12.29%的問題。 SWE-agent透過與專用終端交互,可以開啟、搜尋文件內容,使用自動語法檢查、編輯特定行,以及編寫和執行測試。 (註:以上內容為原始內容微調,但保留了原文中的關鍵訊息,未超過指定字數限制。)SWE-A

戀與深空中人物有著各方面的數值屬性,遊戲內的每一種屬性都有其特定的作用,而暴擊率這一屬性就會影響到角色的傷害,可以說是一項很重要的屬性了,而下面要帶來的就是這屬性的提升方法了,所以想知道的玩家就可以來看看了。戀與深空暴擊率提升方法一、核心方法要想達到80%的暴擊率,關鍵在於你手中的六張卡的爆擊屬性總和。日冕卡的選擇:選擇兩張日冕卡時,確保它們的芯核α和芯核β副屬性詞條中至少有一條是暴擊屬性。月冕卡的優勢:月冕卡不僅基礎屬性中包含暴擊,而且當它們達到60級且未突破時,每張卡可以提供4.1%的暴

學習C語言的魅力:解鎖程式設計師的潛力隨著科技的不斷發展,電腦程式設計已經成為了一個備受關注的領域。在眾多程式語言中,C語言一直以來都備受程式設計師的喜愛。它的簡單、高效以及廣泛應用的特點,使得學習C語言成為了許多人進入程式設計領域的第一步。本文將討論學習C語言的魅力,以及如何透過學習C語言來解鎖程式設計師的潛力。首先,學習C語言的魅力在於其簡潔性。相較於其他程式語言而言,C語

520將至,年度虐汪大戲他又雙叒叕來啦!想看看最理性的密碼和最浪漫的告白究竟能碰撞出怎樣的火花?以下帶你逐一領略最全最完整的告白代碼,看看程式設計師們的浪漫是否能擄獲各位心目中女神的芳心呢?

本篇文章给大家介绍如何用前端代码实现一个烟花绽放的绚烂效果,其实主要就是用前端三剑客来实现,也就是HTML+CSS+JS,下面一起来看一下,作者会解说相应的代码,希望对需要的朋友有所帮助。

上週我們做了一次關於《2023PHP創業》的公益直播,很多同學諮詢具體有哪些接單平台,下面php中文網整理了22個還算可靠的平台,以供參考!

程式設計師的工作職責:1、負責軟體專案的詳細設計、編碼和內部測試的組織實施;2、協助專案經理和相關人員同客戶進行溝通,保持良好的客戶關係;3、參與需求研究、專案可行性分析、技術可行性分析與需求分析;4、熟悉並熟練交付軟體部開發的軟體專案的相關軟體技術;5、負責向專案經理及時回饋軟體開發的情況;6、參與軟體開發與維護過程中重大技術問題的解決;7、負責相關技術文件的擬訂等等。