不同的軟體開發團隊做事的風格也完全不同,即使在同一家公司內,許多可變因素也會導致團隊之間出現分歧,作為一名軟體工程師,每當與新同事合作或開發新軟體時,通常都會覺得非常興奮,但在加入新的開發團隊時,我們需要思考一系列的問題,
技術層面
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. 軟體的發布周期是什么?
我們必須了解軟體的發布頻率以及時間,團隊是否實施連續部署,每天都部署多次?還是說一年只有兩次發布?了解軟體的發布日程可以讓你更好地掌握軟體的開發節奏,
總結
對于大多數軟體工程師來說,加入一個新團隊與接觸一項新技術是一個激動人心的時刻!我們需要利用這段時間抓緊學習,希望本文的這些問題能夠幫助你快速地融入新團隊!
作者 | Thomas Stringer
來源 | https://trstringer.com/20-questions-for-new-software-team/
翻譯 | 彎月 出品 | CSDN
近期熱文推薦:
1.1,000+ 道 Java面試題及答案整理(2021最新版)
2.別在再滿屏的 if/ else 了,試試策略模式,真香!!
3.臥槽!Java 中的 xx ≠ null 是什么新語法?
4.Spring Boot 2.5 重磅發布,黑暗模式太炸了!
5.《Java開發手冊(嵩山版)》最新發布,速速下載!
覺得不錯,別忘了隨手點贊+轉發哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/293688.html
標籤:Java
上一篇:回答兩個被頻繁問到的代碼寫法問題
