軟件開發重要性
by Crunch Tech
通過Crunch Tech
在軟件開發中考慮時間的重要性 (The importance of time to think in Software Development)
Modern Technology teams operate in a fast-paced environment. With a Technology team of only 35 people, we average over 50 releases per week. We are rightly proud of our software when compared to our competitors that are 3–4 times our size.
現代技術團隊在快節奏的環境中運作。 我們的技術團隊只有35人,因此每周平均發布50多個版本。 與我們的競爭對手相比,我們的軟件感到自豪,而我們的競爭對手的軟件規模是我們的3-4倍。
To achieve this, our roadmaps are jam-packed with Client feature requests and enhancements. These enable our front-of-house staff to continue providing a personal service, at scale.
為此,我們的路線圖擠滿了客戶功能要求和增強功能。 這些使我們的前臺員工能夠繼續提供大規模的個性化服務。
When faced with this expectation many technology teams choose to pause technical innovation. Continuing trialed-and-tested ways of working can be perceived as faster and lower risk. We found ourselves on this path. The irony of not having the time to keep up with advances in industry that almost always enable cheaper and quicker delivery wasn’t lost on us.
面對這種期望時,許多技術團隊選擇暫停技術創新。 不斷嘗試和測試的工作方式可以被認為是更快,更低的風險。 我們發現自己走這條路。 具有諷刺意味的是,沒有時間跟上行業發展的步伐(幾乎總能實現更便宜,更快捷的交付)對我們來說并沒有丟失。
我們對此的回答 (Our answer to this)
We introduced an ‘Innovation Day’. Every team member is encouraged to take one day of the (typically) two-week Sprint to focus on innovation and learning. On ‘Innovation Day’ they are not contributing to the sprint goal.
我們推出了“創新日”。 鼓勵每個團隊成員參加(通常)為期兩周的Sprint中的一天,以專注于創新和學習。 在“創新日”,他們沒有為沖刺目標做出貢獻。
This may involve investigating a new approach or tool that could benefit our development process, or building a proof-of-concept for a feature the business may not appreciate the latest technology has made possible.
這可能涉及研究可能有益于我們開發過程的新方法或工具,或者為企業可能不欣賞最新技術所帶來的功能建立概念驗證。
To date, some example output from Innovation Days includes a mobile app, a Client facing ChatBot, significantly improved development efficiency, and an internal ChatOps tool.
迄今為止,Innovation Days的一些示例輸出包括一個移動應用程序,一個面向ChatBot的客戶端,顯著提高的開發效率以及一個內部ChatOps工具。
It’s worth noting that this time isn’t used to tackle Tech Debt. Our PO’s understanding, and being able to qualify the value in clearing Tech Debt allows it to be ranked in the backlog alongside all other work items, and brought into a sprint.
值得注意的是,這次并沒有用來解決技術債務。 我們的采購訂單的理解,以及有資格結算技術債務的價值,使它可以與所有其他工作項目一起排入待辦事項列表,并進入沖刺階段。
是否需要額外的治理? (Is extra governance required?)
Responsibility for governing ‘how’ and ‘when’ a team member takes their Innovation day is left to the Product Teams themselves. Considerations include: incident response, Scrum events, campaign launches, and delivery cadence. We don’t ‘police’ how the day is spent from outside the team but do encourage sharing the output in our fortnightly ‘Tech-Talks’ or by writing a ‘Tech-Blog’.
產品團隊自己負責管理團隊成員“如何”以及“何時”參加創新日的責任。 考慮因素包括:事件響應,Scrum事件,活動啟動和交付節奏。 我們不會“警告”團隊外部如何度過一天,而是鼓勵在每兩周的“技術對話”中或通過編寫“技術博客”來分享成果。
Some developers are happy to take their Innovation day in isolation. Others appreciate guidance from their peers or mentor.
一些開發人員很樂意將創新日孤立起來。 其他人則感謝同齡人或導師的指導。
Our most notable output has derived from team members investing their efforts in joint ventures. This has allowed team members to broaden their personal networks, and experience other team cultures and ways of working. It also allows team members to experience a role other than their own in a safe environment i.e. Developer as Scrum Master, Javascript Developer as Java Developer.
我們最引人注目的產出來自團隊成員在合資企業中的投入。 這使團隊成員可以擴大他們的個人網絡,并體驗其他團隊文化和工作方式。 它還允許團隊成員在安全的環境中體驗除自己以外的其他角色,例如,開發人員為Scrum Master,Javascript開發人員為Java開發人員。
對團隊的影響 (Impact on the team)
When initially discussing the concept with Stakeholders, it was clear there was some nervousness around diverting 10% of available effort away from the planned roadmap. However, we were confident that giving team members the freedom to innovate and find better ways of working would quickly restore any drop in velocity resulting from reducing the number of work-days in a sprint.
最初與利益相關者討論此概念時,很明顯有些緊張,無法將10%的可用精力從計劃的路線圖上挪開。 但是,我們有信心,使團隊成員能夠自由創新和找到更好的工作方式,可以Swift減少因沖刺減少工作日而導致的速度下降。
1 year on and this hypothesis seems to be correct. The impact this freedom has had on the team culture and motivation has been significant, and was something we hadn’t fully anticipated. Simply by offering the team more autonomy and the opportunity to work with the latest technology has been one of the most positive outcomes of this process.
1年后,這個假設似乎是正確的。 這種自由對團隊文化和動力的影響是巨大的,這是我們沒有完全預料到的。 僅通過為團隊提供更大的自治權和使用最新技術的機會,就一直是此過程中最積極的成果之一。
結論 (In conclusion)
The Innovation Day has allowed us to ‘look up’ on a more frequent basis and ensure we work smarter, not harder.
創新日使我們能夠更頻繁地“查找”并確保我們更聰明而不是更努力地工作。
To stakeholders, we’ve found ‘1 day in every 10’ is very palatable when compared to the alternative of having large but infrequent ‘Technical Innovation Projects’ on the roadmap halting delivery for months.
對利益相關者而言,與路線圖上有大型但不頻繁的“技術創新項目”而將交付中斷數月之久的備選方案相比,我們發現“十分之一日”非常可口。
If your situation is similar to ours, then do consider adopting this initiative. We’d love to hear about your experience or alternative approach. Other areas of our business such as Client Services are becoming increasingly savvy towards the benefits that Agile principles bring. We’re excited to see what innovation can be brought to their area too.
如果您的情況與我們的情況相似,那么請考慮采用此計劃。 我們希望知道您的經歷或替代方法。 客戶服務等我們業務的其他領域對敏捷原則帶來的好處越來越精明。 我們很高興看到也可以在他們的領域帶來什么創新。
Team feedback
團隊反饋
“Having regular periods where I can focus on new technology & strengthen specific areas has been invaluable. I find it better than going on the odd course as I can go at my own pace and focus exactly on what I feel is most needed.”?—?Mark, Front-end developer.
“定期安排我可以專注于新技術并加強特定領域的工作非常寶貴。 我發現這比選擇單調的方式更好,因為我可以按照自己的步調,完全專注于我認為最需要的東西。” — Mark,前端開發人員。
“I love what our technical team has achieved and this is yet another advancement on top of ‘continuous deployment’ with a staggering level of releases. Crunch has always been an entrepreneurial environment where the team contributes their ideas, and the Innovation Day is that perfect freedom to deliver the ultimate ideas — whether they be big or small. The team always knows best”. — Darren, Founder CEO.
“我喜歡我們的技術團隊所取得的成就,這是在'持續部署'之上的又一個進步,發布的版本令人震驚。 緊縮始終是一個企業環境,團隊可以在其中貢獻自己的想法,而創新日則是提供終極想法(無論大小)的完美自由。 團隊總是最了解”。 —達倫(Darren),創始人兼首席執行官。
Written by Jamie Hollis — Developer, turned Scrum Master, turned Development Manager.
杰米·霍利斯(Jamie Hollis)撰寫-開發人員,后來成為Scrum Master,后來變成了開發經理。
Find out more about the Technology team at Crunch and our current opportunities here.
在此處了解有關Crunch技術團隊的更多信息以及我們當前的機會。
翻譯自: https://www.freecodecamp.org/news/the-importance-of-time-to-think-f2ae19667937/
軟件開發重要性