What's next (Part 2)
A software engineer shares a framework for evaluating job opportunities, based on personal career experiences and lessons learned.
A software engineer shares a framework for evaluating job opportunities, based on personal career experiences and lessons learned.
Explores the historical contributions of women in computing, the decline in female participation, and proposes solutions to improve diversity in the tech industry.
A guide on writing effective design documents for machine learning systems, covering structure, purpose, and a two-stage review process.
A JavaScript developer argues for prioritizing CSS skills to improve quality of life and career, especially for those who find it frustrating.
Analyzes the high cost of delaying continuous deployment and advocates for automated, sub-15-minute deploy cycles to boost engineering efficiency.
Advice on prioritizing career growth and learning over immediate salary increases, especially for early-career software developers.
A senior software engineer shares mental models and strategies for succeeding in tech interviews, focusing beyond just technical preparation.
Explores the debate on whether engineering managers need strong technical skills or if management skills alone are sufficient.
An experienced manager discusses the psychological shift from engineer to manager, addressing how to find worth when your team does the implementation.
A data scientist's 2020 reflection on moving to Amazon, building ML systems, and establishing a weekly writing habit for learning and sharing knowledge.
A developer's reflection on how writing a test for a simple one-line bug fix can become a complex, time-consuming task.
An interview with lead data scientist Alexey Grigorev on his career transition from software engineering to data science, his advice, and his work at OLX.
Explores how a pipe wrench lecture by Vannevar Bush teaches the importance of precision in software engineering and domain modeling.
The article outlines four core principles for building quality software: robustness, reliability, stability, and simplicity.
A software developer shares the start of a passion project to build a text-adventure game as a web app using F# and React/TypeScript.
Explains why engineers may struggle to level up, focusing on company-specific opportunities, project availability, and business needs.
Explains fundamental software engineering principles like DRY to help developers write cleaner, more maintainable code.
A guide to testing machine learning code and systems, covering pre-train and post-train tests, evaluation, and implementation with a DecisionTree example.
A candid look at the real, often unspoken reasons engineers become managers, challenging the typical 'selfless' narratives.
A developer explains why they left a job due to stagnation, outdated tech, and lack of growth, critiquing high turnover as a company failure.