産品特色
編輯推薦
適讀人群 :所有程序員,以及非程序員。 如果你:
是一個程序員
想成為一個程序員
想瞭解程序員的工作與生活
對程序猿這種特殊物種感到好奇
都可以從本書中找到你想要的東西。
如果你隻是想吐槽程序員,也可以從本書中找到各式各樣的靶子。
內容簡介
《你好哇,程序員——漫話程序員麵試求職、升職加薪、創業與生活》以漫畫+幽默風趣的語言,形象、生動地刻畫齣程序員的世界。《你好哇,程序員——漫話程序員麵試求職、升職加薪、創業與生活》涵蓋瞭程序員工作與生活、創業的方方麵麵,如麵試、求職、升職、加薪、加班、傢庭,等等。程序員的喜怒哀樂,都暗含其中,具有非常高的閱讀價值。作者作為一名程序員,具有多年的從業經驗,難得的是文筆齣眾,通俗易懂,讀者讀來能快速産生深深共鳴。
作者簡介
安曉輝(foruok),老程序員,經曆過軟件開發工程師、項目經理、部門經理、技術專傢、初創公司技術閤夥人、技術總監等職位,對程序員的職業生涯發生有深刻理解和體會。
熱愛技術,獨立寫作《Qt on Android核心編程》、《Qt Quick核心編程》兩本技術圖書,由電子工業齣版社齣版。熱愛分享和傳播,維護有CSDN技術博客(http://blog.csdn.net/foruok),2014、2015連續兩屆CSDN博客之星。熱愛讀書、寫作,《程序員》專欄作者,曾有散文、小說、評論散見於報紙雜誌。
對程序員的職業規劃有濃厚興趣,擁有中國職業規劃師(CCDM)資格,業餘時間幫助有需要的人進行職業規劃。“在行”西安首批行傢,開設瞭程序員職業規劃相關話題。創建微信訂閱號“程序視界”,聚焦程序員的職業適應、發展與規劃,廣受關注,開設與程序員職業發展有關的欄目“有問有答”,已幫助超過20人找到職業定位。
不知霜舞哀傷(udspj),程序員一枚,《程序員的日常生活》連載漫畫作者。
內頁插圖
目錄
群星閃耀的黃金時代 / 1
3D 打印能打印齣“程序猿”嗎 / 4
程序員到底是什麼角色 / 11
那些你珍視的,卻被彆人視為垃圾的 / 15
程序員零門檻嗎 / 20
漫談選人與培訓 / 23
自我發現,找到適閤自己的職位 / 26
親愛的“程序猿”們怎麼找工作 / 29
找工作的闢邪劍譜 / 34
薪資,你是我不能言說的傷 / 43
程序員該不該考慮初創公司 / 55
任性,春節前辭職 / 63
讓程序員跳槽的非錢原因 / 67
無Bug不生活 / 73
誰是為加班而生的 / 84
彆說“我已經很努力瞭” / 89
程序員的生活就這樣嗎 / 95
軟件開發的十八般樂趣 / 106
你的幸運女神呢 / 114
那些害死程序員的細節 / 120
韆奇百怪的程序員 / 129
咦,你也在混日子啊 / 137
讓程序員無語的那些事兒 / 143
多任務的神話 / 149
樂觀的程序員 / 154
怎麼告彆“混日子” / 160
一個老程序員的2014 / 171
坦承無知有多難 / 177
就這幾點,提高工作效率 / 182
程序員的第二生活支點 / 189
程序員的年齡怎麼著瞭 / 195
不要讓自己成為問題 / 204
怎樣纔能多讀一些書 / 211
傷心小箭,你中瞭幾枝 / 217
什麼仇什麼怨 / 223
看看你離優秀有多遠 / 239
問題去哪兒啦 / 246
怎樣成為技術達人 / 253
一張圖道盡程序員的齣路 / 262
技術人員為什麼要寫博客 / 269
程序員和女朋友(男版) / 272
程序員和女朋友(女版) / 281
生個孩子吧 / 288
推薦給程序員的書 / 300
前言/序言
為什麼寫
人最寶貴的就是生命,生命對於每個人來說隻有一次。人的一生應該這樣度過:迴首往事,他不會因為虛度年華而悔恨,也不會因為碌碌無為而羞愧;臨終之際,他能夠說:“我的整個生命和全部精力,都獻給瞭世界上最壯麗的事業——為解放全人類而鬥爭。”
我在上初中時有幸讀到瞭《鋼鐵是怎樣煉成的》一書,它的主角保爾·柯察金說過上麵的話。在我指懸鍵盤準備寫序言時,忽然想到瞭它。
從2005 年我轉行做開發至現在,轉瞬之間十餘年瞭。
十年。
作為程序員,我生命裏最珍貴的十年,都獻給瞭 Coding 。從最初的貿然進入,到後來的喜歡、熱愛、堅持……一路上既有艱難睏苦躑躅徘徊,也有一往無前風光霽月,有很多人很多事,經過我細小卻永是流逝的生命之河,它們就像一顆顆或大或小的石子,激起瞭無數的浪花,漾起瞭經久不息的漣漪。
我曾經是一個程序員,現在仍然是,將來也許還會是。無論如何,我永遠也不會忘記這天賜的身份,以及它帶給我的喜怒憂思悲恐驚。
2015年匆匆而逝,看起來與其他年份一樣並無什麼不同,然而迴望之際,我發現,它對我來講真是特彆的一年,具有非同尋常的意義。這一年發生瞭很多事,無論悲喜,都給我留下瞭深刻的印象,並且它們糾纏交錯,一刻不停地嚮四麵八方撕扯著我,終於讓我明白瞭一些實實在在的生活道理。
也正是2015 年,我始終沒有間斷地在思考程序員、生活、理想、工作、傢庭、親人、責任、現實、擔當等各種人生主題,並且終於有所收獲。我不但認識到,“作為一個人,要是不經曆過人世間的悲歡離閤,不跟生活打過交手仗,就不可能真正懂得人生的意義”;並且明白瞭,“人生的樂趣不僅在於達到某一目標的那一刻,更在於繼續不斷努力追求之中。在這努力追求的過程中,我們覺得生命有意義,活著有價值”。
我想通瞭很多事情和道理,我對工作、生活、理想、奮鬥等主題有瞭自己的理解和看法,這些理解和看法反過來又有形或無形地指導瞭我的生活和工作。
因為我齣瞭兩本書(《Qt on Android 核心編程》和《Qt Quick 核心編程》),參與瞭技術論壇、QQ 群的一些事兒,接觸瞭很多程序員,有剛入行的,有攢瞭幾年經驗的,也有經驗豐富學富五車的……程序員們會提齣各種各樣的問題,並且就這些問題在論壇、QQ 群裏交流、辯論,當這些討論涉及行業選擇、技術方嚮、薪資、財富、目標、追求時往往沒什麼結果——因為這些也真真是與個體密切相關,沒有一定之理。
我工作十幾年,一直在中小公司摸爬滾打,經曆過成長期的公司,也經曆過初創型公司,做過程序員、技術專傢、項目經理、部門經理、項目總監、技術總監,對各個崗位的各種事情都有所瞭解。我是一個愛追問愛琢磨又自以為是的傢夥,自以為想明白瞭很多道理,而這些道理也許是彆人——比如在門外觀望或新入行的兄弟姐妹們,比如乾瞭幾多年仍然不斷麵臨各式各樣迷惘睏惑的老手,比如像我一樣自以為想明白瞭一些人和事需要彆人加以印證的夥計所需要的……所以,我開始寫作“漫談程序員”係列文章,並在博客上保持一周一篇的節奏持續更新。
沒有想到的是,這些文章居然頗受關注,不但在 CSDN 網站點擊量很大,還被大大小小各類技術相關的站點轉載,這是我始料不及的,內心有一絲高興也有一絲惶恐。高興的是“有這麼多人的想法與我相似,那我領悟的這些雞零狗碎看來真可以幫到一些人”,這正是我的初衷;惶恐的是,如果我錯悟瞭某些事,通過文章傳達瞭齣去誤導瞭彆人,可就罪莫大焉瞭。
我就在這種高興與惶恐中前行,一直走到瞭現在。
涓滴之水終可磨損大石,不是由於它力量強大,而是由於晝夜不捨的滴墜。我相信我的堅持一定是有價值的,起碼我在做我想做的事情,我不會感到無聊。如果正好我做的事能對彆人有所助益,幫助彆人發現自己、找到他們想做的事並投入進去,那我不僅不會無聊,還會感到欣慰,因為我這有限的一份熱一份光,畢竟有瞭自我之外的一點價值。
緻 謝
感謝本書的策劃及文字編輯高洪霞老師,她用一罐子熱情洋溢的肯定打消瞭我齣這樣一本書的各式各樣的擔憂,縈繞我心頭的那些“不務正業”、“嘩眾取眾”的聲音在高老師持續的鼓勵下終於慢慢飄散。同時高老師對我的信任和支持也讓我能夠有充足的時間在相對自然的狀態下慢慢思考、寫作,這也使得本書中的大部分文章在最大程度上保留瞭源自程序員生活的原汁原味。
感謝齣版社以及本書的各位編輯,沒有你們的辛苦付齣和鼎力幫助,本書絕難順利付梓齣版。
特彆感謝本書的插畫作者“不知霜舞哀傷”,一麵之緣也無,她居然能信任我,答應為本書配圖,讓我溫暖不已。幸何如之!
感謝我的老婆趙建媛女士,她不但在生活上給予我支持,還是我忠實的讀者,她不斷的催促我在博客上更新,她的期待、鼓勵、建議,是我一路堅持的強大動力,沒有她的理解和寬容,我的一切都是夢幻泡影。
感謝我的女兒安悅瑄小朋友,我在《Qt on Android 核心編程》中提到她時,她四歲半多,在《Qt Quick核心編程》中提到她時,她五歲瞭,現在她過瞭五歲半,一陣風似地往六歲跑去瞭,她天真的期待和嚮往讓我覺得自己在做的事情有瞭彆樣的意義。
特彆要感謝的是在CSDN 上追看我“漫談程序員”係列博文的朋友們,我從博文後麵那些熱情、同感的迴復以及三不五時收到的私信中汲取瞭滿滿的能量,被需要、被認同的感覺是我能夠堅持更新的最大動力,沒有你們,就沒有我的“漫談程序員”專欄,也沒有本書,你們是最可愛的人!
感謝已故的著名作傢王小波,他既是文壇外高手,也是程序員中的奇葩。“你好哇,程序員”這個名字受到他寫給李銀河女士的情書的啓發,特此感謝。
感謝我昔日的BOSS,他們給我機會讓我成為程序員,曾經一路走過八年時光,甘苦畢生不忘。他們是謝勝落、韓軍。
談笑有程序,往來無白丁,感謝曾經經過和正在經過我程序員之路的同事、朋友,我們在一起的日子,若隱若現在扯淡的文字裏。
感謝CSDN,感謝CSDN 博客頻道的編輯們,正是有瞭這個平颱和你們辛勤的勞作,我的一切纔有可能。
最後,也最應該感謝的,是肯花費時間和精力閱讀本書的你,沒有你,我將寸步難行。
這本書適閤誰
這不是一本嚴肅的、正兒八經的談論程序員的書,它隻是我這麼一個老程序員在工作、生活中擷取的幾朵小浪花,談不上多麼深刻,也談不上多麼有趣,但,它是真實的。所以,如果你:
_ 是一個程序員
_ 想成為一個程序員
_ 想瞭解程序員的工作與生活
_ 對程序猿這種特殊物種感到好奇
都可以從本書中找到你想要的東西。
如果你隻是想吐槽程序員,也可以從本書中找到各式各樣的靶子。
《人生這場代碼:從新手村到架構師的進階之路》 內容梗概: 這不是一本純粹的技術手冊,也不是一本刻闆的職場教科書。它是一本寫給每一個在數字世界裏披荊斬棘,或是正準備踏入這片廣闊天地的心靈的指南。它以一個資深程序員的視角,將多年的行業經驗、深刻的洞察以及對人生百態的感悟,編織成一本集勵誌、實用、啓發於一體的成長故事。 本書將帶領你穿越程序員生涯的每一個關鍵節點,從初涉代碼世界的懵懂新人,到獨當一麵的技術骨乾,再到運籌帷幄的團隊領導者,直至勇於開闢未知領域的創業者,書中都將為你一一揭示其間的挑戰、機遇與成長路徑。它不是簡單地羅列“如何做”,而是深入探討“為何如此”,引導讀者理解事物本質,培養獨立思考的能力。 詳細內容展開: 第一篇:叩響代碼之門——新手村的探索與磨練 夢想的啓程與現實的初遇: 許多人被計算機的魅力所吸引,但現實與想象總有距離。本篇將詳細拆解從零基礎到掌握第一門編程語言的心理曆程。我們不迴避學習過程中的迷茫、挫敗和自我懷疑,而是提供切實可行的學習方法論,例如如何選擇第一門語言、如何構建有效的學習路徑、如何剋服“看不懂”的瓶頸,以及如何利用開源社區和在綫資源加速成長。我們將分享那些看似微小卻至關重要的“小確幸”時刻,例如第一次成功運行自己的程序,第一次理解一個復雜的算法。 算法與數據結構:基石的夯實: 很多初學者對算法和數據結構感到畏懼,認為其枯燥且脫離實際。本書將以生動形象的比喻和貼近生活的案例,講解核心算法(如排序、搜索)和數據結構(如鏈錶、樹、圖)的原理與應用。我們會深入分析為什麼理解它們至關重要,它們如何影響程序的效率和可維護性。同時,提供一套係統性的練習方法,幫助讀者將理論知識轉化為實際編碼能力,並分享一些初學者常犯的錯誤以及如何避免。 第一個“Hello, World!”背後的邏輯: 不隻是運行代碼,更要理解代碼是如何運行的。本篇將解析編譯、解釋、操作係統、內存管理等基礎概念,讓讀者明白代碼在計算機中是如何被執行的。我們將探討不同的編程範式(麵嚮過程、麵嚮對象、函數式),並分析它們的優劣以及適用場景。通過剖析一個簡單的“Hello, World!”程序,延伸齣背後龐大的計算機科學體係,幫助讀者建立起宏觀的認知。 版本控製的儀式感:Git: Git已成為現代軟件開發的必備技能。本篇將不僅僅介紹Git的基本命令,更會強調其在團隊協作中的重要性,以及如何利用它進行代碼管理、分支策略、代碼迴滾等。我們將模擬真實的開發場景,展示Git在解決衝突、閤並代碼中的實際應用,並分享一些高級技巧,幫助讀者成為Git的高手。 初涉職場:麵試的藝術與生存法則: 從學生到職場人,轉變是巨大的。本篇將詳細解析程序員求職的各個環節。從簡曆的撰寫技巧(突齣亮點,規避弱點),到不同類型麵試(筆試、技術麵試、HR麵試)的準備策略,再到如何迴答那些刁鑽的技術問題和行為問題。我們將分享一些真實的麵試經曆,剖析成功與失敗的原因,並提供麵試官視角下的思考,幫助讀者知己知彼,百戰不殆。 第二篇:代碼的進化與職場的躍遷——從普通到優秀 代碼質量的修煉:寫“人”而非“機器”能懂的代碼: 優秀的代碼不僅能運行,更易於閱讀、理解、維護和擴展。本篇將深入探討代碼規範、命名規則、注釋的藝術、函數的設計原則(如單一職責原則)、以及如何進行有效的代碼重構。我們將通過對比“壞代碼”與“好代碼”,讓讀者深刻體會到代碼質量的重要性。同時,分享編寫可測試性代碼的經驗,為未來的自動化測試打下基礎。 設計模式的智慧:站在巨人的肩膀上: 設計模式是前人智慧的結晶,是解決常見軟件設計問題的通用方案。本篇將精選最常用、最經典的設計模式(如單例、工廠、觀察者、策略等),以通俗易懂的語言和豐富的示例進行講解。我們不僅會介紹模式的結構,更會深入剖析其背後的設計思想和解決的問題,幫助讀者在實際開發中靈活運用,提升代碼的靈活性和可擴展性。 框架與工具:效率的加速器: 現代軟件開發離不開各種框架和工具。本篇將圍繞主流的開發框架(如Spring、React、Vue等)和重要的開發工具(如IDE、構建工具、調試工具)進行深入探討。我們不會隻是介紹API,而是會分析框架的設計理念、工作原理,以及如何通過它們來提高開發效率,解決復雜問題。同時,也會討論如何選擇閤適的框架,以及如何快速掌握新框架。 技術深耕與廣度拓展:雙螺鏇的成長: 程序員需要不斷學習,但學習的方嚮至關重要。本篇將探討技術深度與廣度的平衡。如何選擇自己的技術方嚮,如何成為某個領域的專傢?同時,也要保持對新技術的好奇心,瞭解不同的技術棧,拓寬視野。我們將分享如何進行技術預研,如何跟進技術趨勢,以及如何在工作中不斷學習和成長。 職業生涯的規劃與進階:升職加薪的密碼: 職業發展並非綫性。本篇將從績效評估、技術晉升、管理晉升等多個維度,分析程序員的職業發展路徑。我們探討如何設定職業目標,如何通過技術成果和軟技能來提升自己的價值。同時,也會分享一些關於如何與領導溝通、如何爭取機會、以及如何建立個人品牌等職場智慧。 第三篇:人生的復盤與價值的創造——創業與生活 團隊協作的化學反應:協作的力量: 軟件開發很少是單打獨鬥。本篇將深入探討團隊協作的精髓。如何與不同背景、不同技能的同事有效溝通?如何進行代碼評審,如何處理團隊衝突?我們將分享有效的團隊溝通技巧、敏捷開發方法論(如Scrum),以及如何建立一個高績效的團隊。 項目管理的藝術:從需求到交付的全流程: 成功的項目離不開有效的管理。本篇將介紹項目管理的各個階段,從需求分析、計劃製定、執行監控到風險管理和質量保證。我們將探討不同的項目管理模型(如瀑布模型、敏捷模型),並分享一些實用的項目管理工具和方法,幫助讀者更好地理解項目的生命周期。 創業的衝動與現實:從想法到産品: 很多程序員都有創業的夢想。本篇將剖析創業的艱辛與魅力。我們探討創業前的準備工作,如何驗證商業想法,如何組建團隊,如何融資,以及如何應對創業過程中的各種挑戰。本書將以真實的創業故事為案例,讓讀者瞭解創業的風險與迴報,以及在這個過程中所需要的勇氣、智慧和堅持。 技術之外的生活:平衡的藝術: 程序員並非隻有代碼。本篇將探討如何在技術工作之餘,找到生活的樂趣和意義。我們關注程序員的健康問題(身體與心理),分享時間管理、壓力釋放的有效方法。同時,也會探討如何平衡工作與傢庭,如何培養興趣愛好,以及如何構建豐富多彩的人生。 持續學習與終身成長:人生的迭代: 技術日新月異,人生亦需不斷迭代。本書的最後一篇將升華主題,強調持續學習的重要性。我們探討如何保持學習的熱情,如何應對技術焦慮,以及如何將所學應用於生活的方方麵麵。本書旨在激發讀者對未知的好奇心,培養終身學習的習慣,最終成為一個在技術和生活中都能不斷成長的“迭代者”。 《人生這場代碼:從新手村到架構師的進階之路》是一場關於成長、關於探索、關於創造的旅程。它希望成為你手中那把解鎖潛能的鑰匙,陪伴你在這個充滿機遇與挑戰的數字時代,寫齣屬於自己的精彩人生篇章。