軟技能(2):軟體發展者職業生涯指南 | 如何做好生意 - 2024年5月

軟技能(2):軟體發展者職業生涯指南

作者:(美)約翰·森梅茲
出版社:人民郵電
出版日期:2020年06月01日
ISBN:9787115534538
語言:繁體中文
售價:517元

本書是《軟技能:代碼之外的生存指南》一書作者的新作,主要圍繞軟體發展從業者職業生涯的發展歷程,描述軟體發展者在職場中需要具備的各種“軟技能”—如何入行成為軟件開發者,如何學會第一門編程語言,如何寫求職簡歷,如何準備面試,如何選擇工作崗位,如何選擇技術方向,如何拓展技術技能,如何與團隊和領導融洽相處,如何以著書立說方式為自己在業界贏得讚譽,等等。本書適合各層次的軟體發展者閱讀。儘管本書名義上是專門寫給軟體發展者的,但實際上這也是一本關於管理個人職業生涯以及如何獲得成功的書,對軟體發展行業的各類從業者做好職業發展規劃都很有幫助。

約翰·森梅茲(John Sonmez)

暢銷書《軟技能:代碼之外的生存指南》作者、“Simple Programmer”網站的創始人。他努力追求“將複雜問題轉化為簡單解決方案”。他為線上培訓機構Pluralsight開發了50多門線上課程,涉及iOS、Android、.NET、Java和遊戲開發等多個主題。他是“Get Up and Code”播客的主持人,在這裡他討論“程式師健身”;他還是“Entreprogrammers”播客的主持人,在這裡他和其他三位開發者/企業家分享他們構建線上業務的真實故事。 他是軟體發展者的人生導師,他幫助軟體工程師、程式師和其他專業技術人員推動事業進步,過上更充實的生活。他通過“化繁為簡”的方法,賦予他們實現自身目標的力量。

這本書是為我量身定做的嗎 4
初學者或者只是對學習軟體發展感興趣的人士 4
中級開發者 5
身經百戰的專業人士 5

第1章 整裝待發:寫在開篇的話 22
本書的寫作目的 22
本書的目標 22
如何使用本書 23
反復閱讀與付諸實踐 24

第一篇 入行成為軟體發展者 26

第2章 跬步千里:如何入行 28
我是如何入行的 28
瞭解專業 29
理解問題 29
設計 30
寫代碼 30
測試和部署 31
不只是寫代碼 31
做好計畫 31
把計畫組合在一起 32
創建計畫 32
誰想當“運動員“ 33
具體示例 34

第3章 傍身之技:你需要擁有的技術技能 36
安身立命的本領 36
一門程式設計語言 36
如何結構化代碼 37
物件導向設計 38
演算法和資料結構 38
開發平臺及其相關技術 39
框架或者棧 40
基本的資料庫知識 40
原始程式碼控制 41
構建與部署 42
測試 42
調試 43
方法論 43
感到不知所措?千萬別 44

第4章 格物致知:如何拓展技術技能 45
學習如何快速學習 45
基本過程 45
做中學 46
如何做中學 47
做中學的示例 47
我是怎樣教別人技術技能的 48
閱讀專家寫的東西 50
重要的事情說三遍:實踐,實踐,實踐 50

第5章 無問西東:到底應該學哪門程式設計語言 52
程式設計語言其實並沒那麼重要 52
選擇程式設計語言時的考慮因素 53

第6章 姍姍學步:如何學好你的第 一門程式設計語言 58
從查看一款實用的應用程式開始 58
尋找好的資源或書並流覽它們 59
學習如何創建Hello World 59
學習基本結構並用實際問題檢驗學習效果 60
瞭解語言的功能特性和庫之間的區別 61
通過理解每一行代碼來檢查現有代碼和工作 61
構建某個程式,構建很多程式 62
將程式設計語言應用於特定的技術或平臺上 63
通過解演算法難題來精通這門語言 63

第7章 巍巍學府:通過上大學深造成為軟體發展者 65
優勢 65
劣勢 67
策略 70

第8章 躬行實踐:通過參加程式設計訓練營成為軟體發展者 74
什麼是程式設計訓練營 74
優勢 74
劣勢 78
策略 80

第9章 自學成才:通過自學成為軟體發展者 83
自學程式設計的優點 83
自學程式設計的缺點 86
策略 88

第二篇 找到一份工作 92

第10章 初出茅廬:怎樣獲得實習機會 94
什麼是實習 94
我該拿報酬嗎 95
怎樣獲得實習機會 96
如何成為優秀的實習生 98
如何從實習人員轉變為正式員工 98

第11章 柳暗花明:沒有經驗如何找到工作 100
公司在雇用軟體發展者時面臨的最大風險 100
遮罩這些風險 101
在網路空間裡嶄露頭角 101
善打組合拳 102
創建自己的公司 104
面試準備 105
拓展人際關係網路 105
無償工作 105
主動提出做一個小專案 106
先做其他工作 107
獲得認證 108
持之以恆 109

第12章 獨闢蹊徑:找工作時的創新思維 110
傳統的方法,也就是千篇一律的方法 110
獨闢蹊徑 116

第13章 移樽就教:怎樣寫簡歷 123
第 一步:不要寫簡歷 123
挑選簡歷寫手 125
與簡歷寫手協同工作 125
一份優質簡歷的構成要素 126
自己動手寫簡歷怎麼樣 127

第14章 錦囊妙計:如何對付面試 133
不同類型的面試 134
你需要瞭解的面試中常見問題 138
面試小貼士 141

第15章 唇槍舌劍:關於薪酬談判 146
瞭解你的薪資範圍 146
當拿到錄用通知書的時候 147
討價還價 151
定位 152
誰先出價誰先輸 153
不要害怕還價 154
薪酬包裡的一切都是可以談判的 156
不要屈服於時間節點的壓力 156
面臨多重選擇的時候 157

第16章 山高水長:如果要離職,該怎麼做 159
離職的時機 159
怎樣離職 161
世界很小,小到出乎你的意料 165

第17章 半路出家:如何從其他行業轉行成為軟體發展者 168
中途轉行的優勢 168
不利因素 169
怎樣實現轉型 170

第18章 遇水疊橋:如何從測試或者其他技術性角色轉型成為軟體發展者 173
你將面臨的最大障礙 174
把你的目標公之於眾 175
尋求機會 176
自己創造機會 176
利用你自己的時間 177
遇水疊橋 177
換一家公司 178
我的最後一條建議 179

第19章 掎摭利病:合同制員工與領薪制正式雇員之間的比較 180
合同制員工的類型 181
領薪制的工作崗位 183
錢 183
詳細分析合同制崗位的所謂“小時工資” 184
為什麼合同制員工可以得到更多的報酬 185
其他福利待遇的價值 185
職場環境 186
其他考慮因素 187

第20章 去梯之言:從未公開過的招聘行業運作的秘密 189
招聘人員和招聘機構的類型(以及他們如何盈利) 190
對你而言這些意味著什麼 193

第三篇 關於軟體發展你需要知道些什麼 199

第21章 走馬觀花:程式設計語言概述 201
C 201
C++ 202
C# 202
Java 203
Python 203
Ruby 203
JavaScript 204
Perl 204
PHP 205
Objective-C 205
Swift 206
Go 206
Erlang 207
Haskell 207
忽略細節 207

第22章 知難而進:什麼是Web開發 209
簡短的概述 210
Web的工作機理 210
Web簡史 211
主流的Web開發技術 212

第23章 前途大好:移動開發 217
什麼是移動開發 217
主要移動開發平臺 218
移動開發是如何完成的 219
移動Web應用 222
移動開發的注意事項 223

第24章 幕後英雄:後端開發 224
後端開發的確切定義是什麼 224
後端開發者都做些什麼 224
後端開發中主要技術與技能 225
全棧開發者怎麼樣 225
總結 226

第25章 遊戲人生:遊戲開發者的職業生涯 228
一項忠告 228
選擇正規教育 229
必備技能 230
為大型遊戲工作室工作 231
成為獨立遊戲開發者 231
資源和建議 233

第26章 事無巨細:DBA與DevOps 234
DBA 234
資料庫需要呵護與照料 235
我需要成為DBA嗎 235
DevOps:一個全新的角色 236
運維:過去我們是怎麼做的 237
什麼是DevOps 237
這對你意味著什麼 238\

第27章 高屋建瓴:軟體發展方法論 239
傳統的瀑布式 239
你討厭SDLC嗎 240
敏捷 242
其他方法論和非方法論 248

第28章 層層設防:測試和QA基礎 250
測試背後的基本思想 250
常見的測試類型 251
測試過程 255
敏捷團隊如何開展測試工作 256
測試與開發者 256

第29章 源頭把關:測試驅動開發與單元測試 258
什麼是單元測試 259
有時被稱作“單元測試”的又是些什麼 260
單元測試的價值 260
什麼是測試驅動開發 261
測試驅動開發的目的是什麼 262
測試驅動開發的典型工作流 263
以上還只是皮毛 263

第30章 清清爽爽:原始程式碼控制 266
什麼是原始程式碼控制 267
為什麼原始程式碼控制如此重要 267
原始程式碼控制基礎知識 268
原始程式碼控制的技術 271
最流行的原始程式碼控制概覽 273

第31章 步步為營:持續集成 276
以前構建代碼是怎麼做的 277
構建伺服器應運而生 278
持續集成閃亮登場 279
持續集成的典型工作流程 280
CI服務程式與軟體 283

第32章 火眼金睛:調試 286
什麼是調試 286
調試的第 一條規則:不要使用調試器 287
重現錯誤 287
坐下來思考 288
檢驗你的假設 289
檢查你的前置條件 290
分而治之 290
若要要修復bug,應瞭解其產生的原因 291
藝術與科學 292

第33章 日臻完善:代碼維護 293
你職業生涯的大部分時間都要花在維護代碼上 293
偉大的開發者都會編寫可維護的代碼 294
童子軍規則 294
第一重要的是代碼的可讀性 295
重構代碼使其更優秀 295
自動化是必不可少的 297
如果要寫注釋,一定要寫好 297
學習編寫可維護代碼的資源 297

第34章 實至名歸:工作崗位與頭銜 299
頭銜,其實沒那麼重要 299
但你要盡力得到最好的 299
一些常見的頭銜 300
有一個頭銜要避開 301
基本角色或工作 302
大型科技公司裡的頭銜 303
關於頭銜其實還有相當多門道 304

第35章 多姿多彩:軟體發展者的工作類型 305
編寫代碼 305
修復bug 306
設計和架構設計 306
開會 307
學習 307
實驗與探索 308
測試 308
思考 308
與客戶/利益相關人打交道 309
培訓/輔導 310
就到這裡吧…… 310

第四篇 軟體發展者的日常工作 311

第36章 和而不同:與同事相處 313
第 一印象 313
盡你所幫助別人 314
置身於戲外 315
但對於衝突也不用逃避 315
政治與宗教 317
無所事事的同事 317
喋喋不休的同事 320
有毒人群 321
還有好多狀況呢,我該怎麼處理 322

第37章 順勢而為:與老闆相處 323
理解你的老闆 323
“責任在我”的認知 324
怎樣讓你老闆的工作更容易 325
壞老闆 326
你不能總是選擇你的老闆 334

第38章 協力共進:與測試人員相處 335
測試人員並非敵人 335
你要知道考試內容是什麼 336
自己要先測試一下自己的東西 337
避免陷入“發現bug-修復bug”的連環套之中 337
幫助他們實現自動化測試 338
要是遇到一個混蛋測試人員該怎麼做 338

第39章 等量齊觀:工作與生活的平衡 340
平衡工作/生活就是一個神話 340
加班毫無益處 342
但是,沒有藉口不努力工作 342
首先要讓自己有收穫 343
好自為之,這個要放在第 一位 344
謹慎選擇你的人際關係 345
活在當下 346
真正的工作/生活平衡之道 347

第40章 並肩作戰:與團隊協作 348
團隊,一榮俱榮一損俱損 348
團隊擁有共同的目標 349
對團隊負責 350
溝通與協調 351
要坦誠,但也要機智 351

第41章 讜言嘉論:推銷你的想法 353
為什麼推銷你的想法如此重要 353
不要爭論 354
具有說服力 354
循循善誘 355
清晰溝通 356
向權威借勢 356
樹立權威 357
好為人師 358
勤於練習 358

第42章 衣冠楚楚:如何著裝 359
外表很重要 359
比你目前職位高出兩個等級的著裝 361
追隨領導 362
魅力與矛盾 363
著裝可以改變你的個性? 364
象徵社會地位的符號 364
頭髮、化妝和基本衛生 365
如果我不在乎怎麼辦 366

第43章 謀事在人:安然渡過績效評估 368
我是如何逆轉對我的績效評估結果的 368
提早著手準備 370
要有明確的目標,還要讓他們知道 371
跟蹤和記錄你的進展 372
準備好充分的理由 372
必要時,你可以上訴 373
陷阱——給自己評定等級 374
同事之間互相打分 375
員工排名制度 376

第44章 光明磊落:處理偏見 379
要接納人們無意識的歧視偏見與陳規陋習 379
給自己最好的機會以遠離偏見 380
不要讓自己與世隔絕 382
對自己要有信心 383
盡可能無視它 383
如果你不能無視,那就報告 384
偏見糟透了 385

第45章 身先士卒:處於領導的位置 386
什麼是領導力 386
如何做高效能的領導者 387
成為所有領域內的楷模 387
讓自己保持有更高水準的責任心 388
你要對團隊負責 389
相信你的團隊,合理授權 389
身先士卒 391

第46章 前程似錦:獲得提拔與晉升 392
總是選擇責任而不是薪酬 392
主動 393
投資於對自己的教育 394
把你的目標公之於眾 395
讓自己在公司之外更有價值 396
成為資產 397
詢問具體數字 398
不要製造威脅 399
不要談論你為什麼需要錢 400
如果一切都失敗了,去別處 401

第47章 巾幗英雄:科技女性 403
陳舊腐朽的觀念和汙名 404
為什麼男人騷擾女人 404
給女士的忠告 406
給男人的忠告 412
衷心希望本章內容能幫上忙 416

第五篇 推進你的職業發展 417

第48章 名滿天下:建立聲譽 419
名滿天下的收益 420
風格造型與真材實料,相輔相成 421
打造個人品牌 422
如何做到名滿天下 423
為他人創造價值 425
這一切需要持之以恆 426

第49章 廣結善緣:社交與人脈 428
拓展人脈的錯誤方式 428
拓展人脈的正確方式 429
到哪裡去拓展人脈 430
創建和掌管一個團體 432
拓展人脈並不困難 433

第50章 與時俱進:讓你的技能緊跟上時代 434
沒有計劃其實也是計畫,只不過是一個糟糕的計畫 434
閱讀博客 435
讀書 435
挑選一樣新東西去學習 436
學習的品質 438
參加活動 438
閱讀新聞 439
大量編寫代碼 439
不要讓自己過得太舒服 440

第51章 行家裡手:做專才還是做通才 441
專業化的力量 441
為了做到專業化,你必須要有廣泛的基礎 442
這一切都與T型知識體系有關 443
但每個人都說尋找通才 443
今天,你甚至沒可能成為通才 444
如果我選擇術業專攻的方向是錯誤的,我該怎麼辦 444
所以你該怎麼辦 445

第52章 傳經佈道:演講和參加會議 447
參加會議 447
演講 449
一些實用技巧 453
走出去實踐吧 457

第53章 筆耕不輟:創建博客 459
為什麼博客仍然是你最好的選擇 460
怎樣創建博客 461
選擇一個主題 462
怎樣撰寫博客文章 463
堅持不懈的力量 466
引流 467
找到你的聲音 469
筆耕不輟 471

第54章 海闊天空:做自由職業者乃至創業 472
你確定要走上這條道路嗎 473
什麼是自由職業 474
怎樣邁出第 一步 475
上一節中說過有一條輕鬆一些的途徑…… 476
怎樣設置收費費率 477
創業 480
所有這一切很艱難,但是值得付出 486

第55章 策馬揚鞭:職業發展路徑 488
3種類型的軟體發展者 488
職業發展的選項 490
穿越“玻璃天花板” 493
做管理還是搞技術 494
“我要去哪裡”的問題需要一直在思考,從不間斷 495

第56章 未雨綢繆:工作穩定性與工作保障 497
沒有什麼是安穩的,不過這沒關係 497
工作保障並非來自囤積知識 499
取而代之地,要做完全相反的事 500
用能力代替穩定 500
建立自己的安全防護網 501
擁抱不確定性 503

第57章 學無止境:培訓與資格認證 506
證書物有所值的嗎 506
小朋友,你為什麼又拿了那麼多證書 507
怎樣獲得證書 508
那麼培訓呢 509
都有哪些培訓 510
充分利用好培訓機會 511
讓你的雇主為你支付培訓費用 513
做培訓講師 515
關鍵在於你投入了多少精力 515

第58章 樂此不疲:兼職專案 517
兼職項目應該常伴你的左右 518
挑選一個兼職項目 519
讓兼職專案服務於至少兩個目標 520
整裝待發 522
堅持不懈 523
成為終結者 524
從兼職項目中賺錢 525
勇敢邁出第 一步 526

第59章 開券有益:要讀的好書 527
怎樣寫出好代碼的書籍 528
進階類書籍 529
如何重構代碼的書籍 529
培養自己成為優秀開發者的書籍 530
培養自己更加人性化的書籍 531
深入研習類書籍 533
娛樂消遣類書籍 534
勵志類書籍 536
讀書吧,我的朋友…… 537

第60章 餘音嫋嫋:結束語 539
最後一個請求 540
 


相關書籍