featured in #445
Three Dimensions Of Developer Productivity
tl;dr: Abi offers a three-dimensional approach to understanding and measuring developer productivity. The dimensions are Velocity, Quality, and Satisfaction. The authors argue that "any picture of productivity would be incomplete if these dimensions are not considered." Velocity is the speed at which tasks are completed, but the authors caution that the type of task, its complexity, and routineness must be considered. Quality can be both internal (code quality) and external (end-user experience). Satisfaction encompasses feelings like happiness, autonomy, and flow, and it balances the other two dimensions e.g. "an increase in velocity may lead to reduced costs, but at the same time it can lead to increased stress for developers reducing satisfaction."featured in #445
When, Why, And How GitHub And GitLab Use Feature Flags
- Ian Vanagas tl;dr: Ian discusses several benefits, such as reduced stress on developers, fewer failed deployments, and a higher rate of shipping features. GitLab calculated that fixing an issue without flags is as time-consuming as "developing a whole new feature." The article explores the advantages of feature flags over long-living feature branches for collaboration. Feature flags keep code changes small, make reviews easier, and limit merge conflicts. Both GitHub and GitLab use feature flags not just based on users but also on "actors" like organizations, teams, and repositories to create consistent experiences.featured in #445
featured in #445
Measuring Developer Productivity? A Response To McKinsey
- Kent Beck Gergely Orosz tl;dr: “We wrote this article for software developers and engineering leaders, and anybody who cares about nurturing high-performing software development teams. By “high performing” we mean teams where developers satisfy their customers, feel good about coming to work, and don’t feel like they’re constantly measured on senseless metrics which work against building software that solves customers’ problems. Our goal is to help hands-on leaders to make suggestions for measuring without causing harm, and to help software developers become more productive.”featured in #444
The Engineering Executive’s Role In Hiring
- Will Larson tl;dr: Will discusses your role as an executive in your organization’s hiring, the components you need to build for an effective hiring process and provides concrete recommendations for navigating the many challenges that you’re likely to run into while operating the hiring process. He gives you enough to get started, build a system that supports your goals, and start evolving it into something exceptionally useful.”featured in #444
Why Top Engineering Teams Are Using Multi For Collaboration
- Alexander Embiricos tl;dr: With teams being more distributed than ever before, Multi is bringing the joy of building together back by making your apps and operating system multiplayer. With Multi, multiple people can share screen at the same time, cursor sharing and drawing is effortless, and automatic deep links make sharing context one click away.featured in #444
featured in #443
8 Reasons Why WhatsApp Was Able To Support 50 Billion Messages A Day With Only 32 Engineers
tl;dr: (1) Single responsibility principle. (2) Tech stack. Erlang provides scale with a tiny footprint. (3) Leveraged robust open source and third party libraries. (4) A huge emphasis was given to cross-cutting concerns to improve quality. (5) Diagonal scaling to keep the costs and operational complexity low. (6) Critical aspects were measured so bottlenecks were identified and eliminated quickly. (7) Load testing was performed to identify single points of failure. (8) Communication paths between engineers were kept short.featured in #443
featured in #443