計世網

快!準!穩!消滅軟件開發人員的五大痛點!
作者:Lee Atchison | 來源:計算機世界
2019-10-23
想努力跟上業務需要、技術發展、技能需求、開發與運營職責的快速變化?請記住這些提示。

 

精通數字化的客戶需要高質量的軟件和網站。他們會想當然地認為供應商會不斷推出新的功能以讓他們處于最新狀態。然而,要讓客戶保持參與度和滿意度,除了需要敏捷的應用程序開發流程和技術,更重要的是擁有利用最新開發工具、技術和方法等技能的軟件工程師。

因此,軟件開發人員的世界變得越來越具有挑戰性。讓我們看看現代軟件開發人員所面臨的5個關鍵難題,以及如何克服這些難題吧。

對不一致的目標進行協調

痛點:軟件開發人員在開始著手工作時往往對業務領導者和產品所有者提出的業務需求理解得不透徹。這可能導致目標不一致,進而導致開發出不必要和不適當的功能。同樣重要的是,如果開發人員沒有將重點放在正確的優先項目上,他們可能會錯失良機。把所有這些加在一起,則將會導致客戶出現不滿,因為他們沒有得到他們所需要的。

不一致的目標也會造成團隊之間缺乏信任,并可能導致沖突和開發出不成功的產品,進而導致公司在客戶、收入和利潤方面蒙受損失。

如何處理:開發人員和業務領導者之間的定期溝通對于防止目標不一致至關重要。此外,隨著業務目標的不斷變化和完善,應對這些變化的流程對于長期成功至關重要。開發人員必須對不斷發展的想法和需求保持開放和靈活。

我們需要認識到,當產品所有者改變他們的需求時,通常都有著充分的理由。當然,業務負責人有時會在沒有正當需要的情況下改變他們的目標、優先等級和期望。有時快速發展的業務需求會讓開發人員感到非常棘手,但是靈活的業務領導和融洽的團隊間關系可以帶來更好的終端產品,并最終讓客戶感到滿意,同時也可以讓公司變得更加成功。

跟上創新速度

痛點:新興技術正以令人眼花繚亂的速度推動新產品的推出。加速軟件開發工具和流程的創新可能會影響產品能力和市場接受度,并最終影響公司的成功。

幾年前,像DevOps、云計算、AIOps、智能系統,甚至移動計算等創新都不為人們所知。然而今天,它們都是現代軟件應用程序開發中不可或缺的組成部分。

如何處理:現代軟件應用程序不再是靜態的,我們也不能再保持靜態。開發人員必須對新的想法和概念持開放態度,跟上最新的想法和創新,并找到創造性的方法,將新的工具和技術應用到不斷發展的企業應用程序需求當中。

具有諷刺意味的是,這使得軟件開發人員與他們的業務領導者處于相似的地位。業務主管負責了解客戶不斷變化的需求,而你也有責任了解不斷推出的新功能,以幫助解決這些需求。

掌握最新的軟件工程技術

痛點:還記得Ruby 是什么時候風靡一時的嗎?還記得什么時候XML是應用程序間通信的解決方案嗎?企業軟件開發建立在精心安排的瀑布式開發流程之上的日子怎么樣?PHP又是何時才讓Web應用程序開發變成一件輕而易舉的事情的呢?

如果你已經在這個行業干了幾年,那么當你費盡苦心掌握的一些技術集突然變得不再重要,你可能也會變得不再重要。相反,掌握一套新的技能將會讓你變得非常受歡迎。

在軟件行業,一項技能、技術或流程的壽命大約是2到3年。當你構建起一個應用程序并開始在市場上看到它們取得成功時,往往表明用于開發它們的技術可能已經過時了。為了應對這種極端的創新速度,你必須跟上不斷調整的行業規范和要求。即使壓力越來越大,要做的事情越來越多而時間卻變得更少、速度也變得越來越快,你也必須花時間來讓自己的技能處于最新狀態。

如何處理:在上世紀八十年代流行起來的“T型人才”概念對于在不斷變化的軟件行業中取得成功非常關鍵。“T型人才”對許多技術有著廣泛的理解,同時又對于一些關鍵領域有著深刻的理解。這種結合使得這類人才在他們的專業領域具有很高的價值,并且有著很強的大局觀。

隨著時間的推移,“T”字中代表深度的一豎所涉及的專業知識將會不斷地發展。同時,代表廣度的一橫有助于你決定下一步要專門研究哪些技術。

排除環境的干擾

痛點:現代工作環境既是福也是禍。除了可以在房產方面節省資金外,共享的工作區、開放的辦公室和專用的團隊空間還被認為可以減少層次結構、提高創造力和協作能力、提高靈活性。

軟件工程師是需要時間來實際開發軟件的,而且許多現代工作環境似乎已經忽略了這一需求。像Slack這樣的協作工具可能會讓情況變得更糟,因為它們讓每個人都可以快速討論一些期望值。開發人員會發現由于沒有統一的意見,自己很難將注意力集中在手頭的工作上。

如何處理:即使在現代工作環境中,有時間和空間進行安靜的反思和生產非常關鍵。遠離喧囂的開放式辦公室對于成為高效的開發人員至關重要。

許多開發者使用耳機來創造一個無干擾的環境,但是這樣可能還不夠。要想讓精力更為集中,找一個遠離正常團隊環境的安靜角落;關閉通知并退出所有設備上的協作和通信應用程序,包括計算機和手機;播放能夠令人心情平靜的音樂,創造出一個安靜的環境。有意識地這么做可以幫助你成為一個更為高效的工程師。當你無法專注于一個棘手的開發問題時,你可以為同事提供幫助。

管理運營開銷

痛點:隨著DevOps的興起,開發人員做好軟件,然后“將它們隔墻甩給”運營人員去管理的日子已經一去不復返了。不管是否已經準備好,現代軟件工程師逐漸開始負責自己開發的軟件的運營工作。這樣做有什么好處呢?除了在軟件不能正常工作時會在半夜被叫醒來處理問題的人外,沒有人會關注你構建的高質量、可擴展且高可用性的應用程序。

將dev和ops功能整合在一起已經被證明對應用程序是有益的,對構建它們的企業也是有好處的。掌握構建高效、可靠、大規模運行的應用程序所需的工具和技術有助于軟件開發人員的成長和開發。但是DevOps所增加的運營責任是有代價的。許多開發人員在不了解大規模維護應用程序所涉及到的內容的情況下,就被賦予了運營職責。此外,增加的運營負擔可能會成為另一個分散注意力的因素,導致開發人員無法集中精力創建優秀的軟件。

如何處理:軟件支持方面的變化可以幫助開發人員在沒有求助時集中精力開發,在有求助時集中精力改進應用程序的運營能力。團隊應該強調,隨叫隨到的開發人員不應該只為了滿足新產品開發承諾而規劃自己的工作。相反,他們應該利用這個機會更好地了解運營需求并改進操作基礎設施。在不處理求助電話時,對操作方面的關注有助于讓你更加專注于開發問題。

無論喜歡與否,開發人員坐下來編寫代碼,然后把它們甩手扔給別人,讓別人為之操心的日子早已不復存在。在現代軟件行業中,對在更為復雜的環境中處理更復雜軟件的期望,要求開發人員能夠進行自我更新和自我擴展,并且就像他們創建和維護的應用程序一樣。

作者:Lee Atchison現為New Relic的云架構高級總監,擁有32年的從業經驗,曾經在亞馬遜擔任了七年的高級經理,并在著有《規模架構》一書(由O'Reilly Media于2016年出版發行)。

編譯:陳琳華

原文網址:https://www.infoworld.com/article/3411438/5-pain-points-of-modern-software-development-and-how-to-overcome-them.html

責任編輯:周星如

快乐彩11选5走势图