Pragmatic Engineer
The #1 technology newsletter on Substack. Highly relevant for software engineers and engineering managers, useful for those working in tech
Sign Up To This NewsletterRecent Summaries
Pragmatic Engineer | Shipping projects at Big Tech with Sean Goedecke | December 18, 2024 | Opened: 2
Takeaways:
-
Success in shipping projects at big tech starts with strong technical skills. Effective engineering should underpin good management practices.
-
Proactively creating technical demos or prototypes can significantly increase your visibility and indispensability within your team.
-
As a tech lead, adopting the "management lingo" is key for successful communication with leadership, which often requires understanding less direct expressions.
-
Software projects are inherently at risk of failure unless actively managed; awareness of potential pitfalls is crucial for success.
-
Remote engineers should align closely with company goals, taking initiative to demonstrate high agency in their work.
Links:
Pragmatic Engineer | Thank you for supporting The Pragmatic Engineer | December 17, 2024 | Opened: 2
Takeaways:
-
Limited-time offer:20% off the first year of a paid subscription.
-
Paid subscription benefits include:
-
Articles every Tuesday and Thursday.
-
Access to resources for engineering managers and engineers.
-
Complete archive of past articles.
-
Reviews from subscribers available for insights on the newsletter quality.
Links:
Pragmatic Engineer | Notion: going native on iOS and Android | December 11, 2024 | Opened: 5
Takeaways:
-
Notion's mobile engineering team is small (only11 members), which efficiently manages the app for over10 million users across iOS and Android. This highlights the importance of a skilled and senior team structure.
-
The transition from web-based to native apps was gradual, as the mobile team had to ensure compatibility with existing features while migrating. Most of the app is now native, with the editor as a complex component still being finalized.
-
Notion implements a weekly release cycle for updates, demonstrating that rapid iterations are possible even for native applications requiring app store approvals.
-
Feature flags are crucial for managing new feature rollouts and mitigating issues in a large user ecosystem, especially where binary code is deployed.
-
Notion’s flexible data model enhances document manipulation but introduces complexities that require substantial engineering resources.
Links:
Pragmatic Engineer | Why my new audiobook “The Software Engineer's Guidebook” is everywhere except on Audible | December 10, 2024 | Opened: 7
Audiobook Release Notice: “The Software Engineer’s Guidebook”The new audiobook is now available on numerous platforms but is currently not on Audible due to approval delays and its monopolistic practices. Here’s what you need to know:
Takeaways:
-
The audiobook of “The Software Engineer’s Guidebook” is published and available almost everywhere except Audible.
-
The absence on Audible is due to the company’s slow approval process and its high take rates, which can reach up to75% for non-exclusive audiobooks.
-
The audiobook is being distributed through various platforms, including:
Links:
Pragmatic Engineer | Software architecture with Grady Booch | December 04, 2024 | Opened: 8
Grady Booch, Chief Scientist for Software Engineering at IBM, shared insights on the evolution of software architecture, UML’s creation, and thoughts on LLMs during a discussion. Key points include the historical context of software development, the changing role of software architects, and his advice for budding engineers.
Takeaways:
-
The US Department of Defense pioneered complex software systems in the70s and80s, leading to advancements in distributed computing.
-
Grady identifies three dimensions of software architecture: Ceremony (processes), Risk (system impact), and Complexity (building from scratch).
-
Economics of software architecture are closely linked; in earlier decades, performance was critical due to expensive machine time, while today, focus also includes cost-effective architectures.
-
Significant changes in software engineering, such as the shift from monolithic to distributed systems and the impact of parallel computing through GPUs, are compared to current transitions due to LLMs.
-
Booch observes two "golden ages" prior to the1990s, emphasizing algorithmic problem-solving and the rise of object-oriented programming.
Links: