「在 UI,我們希望開發者具備全盤思考的能力。」
Ubiquiti Software Tech Lead Jay 認為,相較於其他科技公司, UI 更希望軟體工程師不僅是埋頭專注在自己的專業領域或是技術層面,也能練習從別的 function、甚至進一步從使用者的角度去思考產品研發。
Jay 觀察,市面上有些產品雖然很好用,但卻不是特別安全;或是產品很 fancy,但對效能沒有概念,「為了讓軟體功能更加全面,開發者不能只是單純探討一個面向,而是要站在整個產品去思考。」
因此,對 UI 的軟體工程師們來說,今年一個全新的嘗試,是每個月舉辦一次的體驗工作坊(UX Workshop)。除了例行的技術分享之外,也讓工程師們學著「從使用者的角度」思考。「 UI 內部常常強調『Outside-in thinking』。這個思維的精髓在於:如果你是使用者,你會想要有什麼樣的功能?」Jay 解釋。
不只是 coding,人人都是使用者
Jay 說明,工作坊主要分作兩個部分,一開始會先用大約 30 至 45 分鐘的時間,讓大家體驗自家產品,並統一留下意見 feedback,第二階段會開放大家提出別家產品的可取之處,希望讓每個 RD 從 set up 開始,具體感受自家的產品怎麼樣、反應速度與效能,並透過各團隊間的交流
討論,進一步思考如何讓產品做得更好。
事實上,過去 UI 的 RD 們就已經建立固定的分享會,由主講的 RD 介紹問題的背景,分享實作的方法和研究成果,並且開放問答,讓大家互相討論交流。 UX 工作坊可以說是技術分享的延伸。由於 UI 有前端、後端,mobile、韌體等不同 team,每位工程師各有不同的專業領域,因此在看法和實作上也有所不同,可以給予不同觀點,這不是只會對 user 有幫助,也會反饋到自己的開發方式,並且協助提升工作流程。
UI RD 會固定舉辦分享會,並透過實際使用自家產品,找到最好的解決方案。
他認為,使用者體驗在定義產品時有分很多角色,從工業設計的角度來看,是外觀、包裝、給使用者的開箱以及安裝體驗,「軟體雖然摸不到,但是我們也同樣會定義設計準則。」比方說,反應到軟體開發的工作項目,前端的重點在於資訊呈現清不清晰,包括透過簡化使用者的操作步驟,用拖拉、圖像的形式協助操作,用視覺化去呈現等等,快速呈現有用的資訊給使用者;後端的角色雖然比較抽象,但除了要提供前端所需要的資源,也要同步確保點擊的效能以及使用者的隱私,掌握有效的足跡跟資料,確保使用者的資料能安全地被管控等。
優化軟硬整合的使用體驗
另一方面,對 UI 軟體團隊來說,打造良好使用者體驗的關鍵,還包括如何跟其他產品有高度整合度。「UI 的軟硬整合,是軟硬體加上使用者情境。」Jay 舉例,以 UI 的 EoT(Enterprise of Things)產品線 Connect 來說,除了要在競爭者眾多的市場中,以使用者使用情境來思考不同切入點外, Connect 產品線整合的產品裝置很多,無論是設備跟設備的互動,設備跟人之間的互動,都是 UX 工作坊中常會被提出來討論的議題。
「UI 硬體非常多,每種硬體的規格都不一樣,基本上就會有電力、規格等問題,每個功能所需的資源都不一樣,面對不同形式的硬體,要做到全部的產品都有很好的設計跟開發,對於軟體開發上是很大的挑戰。」Jay 提到,UI 產品多是軟硬整合,反映在軟體實作上,下一個階段的目標是要在架構上更能做到模組化,做到更好維護以及更好 scaling 的彈性。
而隨著工作坊試行半年以來,團隊也陸續調整部分產品的設計與持續優化功能。 「 UI 是一個品牌,我們重視產品的生命,因此願意投入大量時間,不斷的讓產品有更好的支援和更新。」Jay 提到,常常看到有許多產品在大量生產後,就不再有更新,多數的新功能只會出現在產品的下一代,但 UI 的使用者,只需要透過更新即可體驗到產品的新功能。
UI 投入大量時間不斷的優化功能,讓使用者有最好的操作體驗。
「我可以滿有自信的說, UI 的使用者體驗做得相當深入。使用者會覺得我們的介面做得好,使用上很順手,也更會期待每一次的更新,可以說是靠著良好的使用者體驗圈了不少粉。」Jay 認為,「以前做產品,都是注重在功能的完整度。但是在 UI 以後,我們注重的是功能的使用者體驗,解決使用者的痛點,開發時的思考角度不一樣,做出來的功能就會因此也變得更能貼近使用者。」
組織扁平、年輕敏捷,快速成長中的 UI 的軟體團隊
過去 UI 在台灣以硬體、韌體見長,這兩年軟體也逐步發展成 UI 現階段的核心領域,這兩年相當積極招募台灣優秀的軟體人才,並從 0 到有建立起包括 Cloud、Application、Backend / Frontend、Devops 等近 20 多人的軟體團隊。
「UI 是一家很自由、不會限制作法的公司,軟體團隊除了成員年輕,在工作節奏上也相當敏捷與開放。」在 Jay 看來, UI 產品迭代很快,需要很快改善使用者反饋或是內部 workshop 的建議, UI 軟體團隊就像是精銳部隊一樣,需要有快速反應的能力。除了開發節奏快,由於 UI 產品開發涉及軟硬領域,因此也會需要培養橫向溝通能力,以及時時保持對於新知的學習熱忱,以確保能快速前進。
Jay 表示,目前台灣 Software 在 UI 是開發的核心,掌握對產品充分的決定權,由於 UI 產品量級很大,有廣大的使用者,因此工作成果可以直接反應在產品上,做出真正的改變。未來 UI 也期待更多即戰力能加入團隊,透過更好的軟硬整合,打造更完整的 UI 產品生態系。
「軟體開發,進入的門檻不高,但是想要走向更高的境界是一種挑戰。硬體是一個產品的軀殼,而軟體就是產品的靈魂。在軟體開發上,通常沒有絕對正確的解法,但是我們總會找到更好的答案,這是一個充滿挑戰的工作。」他表示,「過去大家對 UI 在台北的印象就是在做硬體,還有韌體品質及開發能力很好。我希望在未來我們可以改變業界對我們的印象,原來軟體也這麼堅強。」
✨UI Software Team 等你來加入!
Android Application Developer
Cloud Architect
Golang Backend
Cloud Software Developer (Java)
Cloud Software Developer (Node.js)
Cloud SRE(DevOps)_Senior
Full Stack Web Developer
Backend Engineer-node.js
留言