Keeping up to date with the ever-popping development frameworks and technologies takes passion and determination. Following along all the newest trends and keep on self-improving takes daunting effort, formidable motivation and inspiring humility.
SoftwARe Development isn't peanuts, specially on complex products with multiple developers enrolled, and relying on a strict company wide process has proven itself as the key to success, ensuring on-time deliveries and high quality, well crafted interfaces.
Understand the Product 了解产品
To better understand the scope of the product, Developers must leARn its functional and non-functional reqUIrements through an insightful perception of the Design and its macro and micro interactions, by knowing the expected number of users, and its demographic and geographic chARacteristics.
For such an understanding, a Team meeting is held with the Product Owner and the remainder team members, all of whom responsible for briefing in the Dev Team. QUIte often, a Developer Team Member takes pARt in the Workshops.（A very intense journey of meetings, preferable in person, next to a whiteboARd with a marker in-hand, and a wall full of post-its. More about it at How We Work.）
Define Technology Stack 定义技术堆栈
A technology stack is a crucial part of developing any piece of software. It's referred to as the combination of programming languages, frameworks and tools developers can use to bUIld an interface.
Analogy: When bUIlding a car, you don’t start with the painting or the windshields. You start with the chassis and the body to hang everything else on. 打个比方：建造汽车时，你无需从油漆或挡风玻璃开始。你从底盘和车身开始，将其他所有部件悬挂在上面。
Because making significant Stack changes down the line is possible but painful. In most cases, it’ll involve a huge investment of time and money. 因为进行大量的堆栈更改是可能的，但很痛苦。在大多数情况下，这将涉及大量的时间和金钱投资。
As such, we don't force a technology just because we're familiar with it. When a technology we master isn't right for a product, either we adapt or we don't do it at all.