??作者 | Thomas Stringer
譯者 | 彎月
出品 | CSDN(ID:CSDNnews)
不同的軟件開發團隊做事的風格也完全不同。即使在同一家公司內,許多可變因素也會導致團隊之間出現分歧。作為一名軟件工程師,每當與新同事合作或開發新軟件時,通常都會覺得非常興奮。但在加入新的開發團隊時,我們需要思考一系列的問題。
技術層面
1. 如何在本地構建軟件?
這是你應該了解的第一件事。畢竟,你的工作是開發和運行軟件,構建是第一步!
2. 如何在本地測試軟件?
雖然我們可以通過 CI 流水線發現測試錯誤,但是為了縮短內部開發循環周期,你必須能夠在開發的機器上運行測試,確保你能夠正確地運行測試,同時還需要執行回歸測試。CI 流水線不應該成為檢驗代碼錯誤的第一道關卡。
3. 如何設置開發環境?
也許團隊文檔中有明確的要求,但你應該了解需要在開發機器上安裝哪些不同的工具,才能讓你成為一名高效的團隊成員。一次性解決95%的要求,總好過在開發的過程中不斷遇到錯誤和依賴項。
4. 源代碼在哪里?
除了還沒有編寫任何代碼的新產品以外,通常項目都有代碼庫。你需要知道代碼保存在何處,以及如何在本地機器上獲取代碼。
5. CI/CD 流水線在哪里,工作方式是什么?
對于一個可確保交付高質量產品的團隊來說,CI/CD 流水線是最常用的工具之一。你需要找出CI/CD流水線在哪里,并大致了解它的工作方式(可能只需要到處點一點試試看)。查看一下最近的運行狀況,了解都有哪些步驟。
6. 產品的待開發項在哪里?
你不僅需要知道軟件當前的狀況,而且還需要了解軟件未來的樣子。快速瀏覽待開發項,看看產品需要優先推出的功能。
7. 如何在預生產以及生產環境中運行測試?
有集成環境嗎?團隊是否采用了金絲雀構建與部署?團隊是否采用了混亂測試?了解團隊如何確保生產軟件符合并保持特定的標準。
8. 是否需要隨時待命?
這個軟件是否需要隨時待命?如果需要的話,輪班機制是什么?正常辦公時間以外是否也需要隨時待命?在待命期間,如何獲取通知?通常如果不是遇到新組建的隊伍,并被直接安排上值班任務的話,在熟悉這方面的流程之前,你不會接到緊急電話。
9. 內部文檔在哪里?
團隊維護的內部文檔在哪里?這些文檔都是如何劃分的?是最新的嗎?
合作
10. 團隊中都有誰?負責哪方面的工作?
通常軟件團隊都有幾位工程師。有的時候,每個工程師負責的工作都不一樣,但這種情況并不常見。一般都由一個或幾個工程師共同完成一個子項目。因此,你需要了解團隊中每位程序員負責的工作。通常,你可以通過早晨的例會了解他們的工作內容。
11. 團隊每周都有哪些例行會議?
每天早上都有例會嗎?還是每周一次例行會議?你應該了解一下團隊每周的例行會議。
12. 遇到“新手”問題,我應該找誰?
通常在剛加入一個團隊的時候,都會給你分配一個“指導伙伴”,這個人已經在團隊待了一段時間,了解團隊的運作狀況。這是一件非常重要的事情,尤其是你對新軟件一無所知(或幾乎一無所知)的時候,你的問題可以非常低級。即使你是高級工程師,在遇到“新手”問題時,也不要覺得不好意思。
13. 新功能的決定權在誰手里?
產品有產品經理嗎?工程團隊有架構師嗎?我們應該了解功能請求的上游想法。如果能夠跟這個人(產品經理)約個時間,了解一下產品近期與長期的發展計劃就更好了。
14. 團隊的主要溝通方式是什么?
他們使用 Slack ?還是Teams?或者通過電子郵件溝通?工程師通常會花費大量時間探討問題和進行其他類型的討論。當然,作為團隊的新成員,你也希望加入這些溝通渠道。
外部因素
15. 如何獲得客戶的反饋?
我們的軟件是 GitHub 上的開源軟件嗎?我們獲取反饋的方式通過GitHub的議題嗎?還是說由銷售團隊為產品團隊獲取客戶的反饋?是否還有支持團隊可以收集客戶經常遇到的問題?換句話說,我們必須了解獲取客戶反饋的方式:無論是通過其他平臺、個人還是團隊。畢竟,我們是在為客戶編寫軟件。
16. 客戶的支持協議有哪些?
是否有我們必須遵守的 SLA?我們必須支持哪些協議?
17. 公開/客戶文檔在哪里?
這一點很重要。如今無論軟件本身有多么好,我們都需要確保客戶文檔的準確性與及時性。這些文檔在哪里?如何保持文件及時更新?是誰的責任?(希望答案是“每個人”)。
產品
18. 軟件有哪些高層面的痛點?
我們必須知道軟件和團隊是否面臨一些重大問題。是否有一些因架構引發的問題?是否存在安全漏洞?是否有一些常見的客戶問題反復出現并需要解決?
19. 利益相關者關注的焦點是什么?
是否存在某個核心人物或其他團隊希望看到的功能?這些利益相關者往往會對軟件的短期和長期路線圖產生重大影響。了解他們關注的焦點就可以讓你看清接下來的發展方向。
20. 軟件的發布周期是什么?
我們必須了解軟件的發布頻率以及時間。團隊是否實施連續部署,每天都部署多次?還是說一年只有兩次發布?了解軟件的發布日程可以讓你更好地掌握軟件的開發節奏。
總結
對于大多數軟件工程師來說,加入一個新團隊與接觸一項新技術是一個激動人心的時刻!我們需要利用這段時間抓緊學習。希望本文的這些問題能夠幫助你快速地融入新團隊!
原文鏈接:https://trstringer.com/20-questions-for-new-software-team/
責任編輯:haq
-
開發
+關注
關注
0文章
370瀏覽量
40872 -
代碼
+關注
關注
30文章
4803瀏覽量
68756
原文標題:程序員加入新團隊必問的 20 道問題
文章出處:【微信號:sztonyu,微信公眾號:深圳東裕光大】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論