Managers who start the downfall
A manager argues that effective management is crucial for keeping engineering teams focused on business goals and preventing technical rabbit holes.
A manager argues that effective management is crucial for keeping engineering teams focused on business goals and preventing technical rabbit holes.
A coaching-style article posing critical questions for tech leaders to consider before scaling their engineering teams and hiring new developers.
A critique of the unrealistic expectation that an outsider could quickly fix Twitter's massive, complex legacy codebase.
Strategies for managing complex, semantic code migrations in large, multi-team mobile codebases, focusing on coordination and tooling.
An iOS engineer's experience tackling technical debt and refactoring a legacy codebase at Babylon, highlighting the challenges of prioritizing tech work over new features.
A guide to manually tackling tedious software development tasks like linting and dependency upgrades, and when brute force is the right approach.
Explores how legacy IT systems resemble zombies, surviving on human knowledge, and why digital transformation must address both technology and human processes.
Strategies for development teams to identify, plan for, and break the vicious cycle of accumulating technical debt.
Explains how to leverage urgency to justify large-scale refactoring projects and gain organizational buy-in for technical improvements.
Introduces the 'Code Review Pyramid' concept to prioritize important aspects like functionality and performance over style in code reviews.
A developer's personal rule for avoiding technical debt by not writing 'bad' code, based on experiences with legacy systems.
A monthly update on TinyPilot, a tech hardware project, covering revenue, product development challenges, and business bottlenecks.
A developer shares 9 key lessons learned from maintaining a large Vue.js codebase for 3 years, focusing on consistency, legacy code, and dependencies.
Explores why software becomes complex over time, focusing on the additive nature of feature requests and the lack of a strong constituency for simplicity.
Explores the causes of legacy software and offers developer strategies to prevent codebases from becoming hard-to-maintain systems.
Explains why website performance should be treated as a permanent feature, not a one-time project, using analogies from elite sports and the YouTube Feather case study.
A developer's chart on career priorities goes viral, sparking discussion on the evolution from making code work to valuing readability and avoiding over-abstraction.
Discusses problem-solving philosophy in tech, advocating for avoiding problems entirely rather than patching them, using API versioning as an example.
A developer explains why they left a job due to stagnation, outdated tech, and lack of growth, critiquing high turnover as a company failure.
Discusses the challenges of scaling software development over time, emphasizing the need for automated enforcement of code properties as projects grow.