What am I reading week 3/2025
Weekly insights on engineering leadership, tech trends, and tools I'm exploring
With today's post, I am creating a new section on my Substack called "Engineering Insights Weekly." All my weekly "What am I reading" posts will be published under this subsection of Sound of Development.
Large software projects present significant challenges, with many—especially government initiatives—failing outright. Those that succeed often run over schedule and over budget. While we've largely accepted this reality, could there be a better approach? In my next post, I'll analyze publicly available data to explore not only how large software projects could work differently but also how this might challenge our conventional methodologies.
Before that, let's dive into this week's things I'm reading and thinking about:
Articles and Podcasts
Sonos CEO exits
For those unfamiliar with Sonos, they're a leader in wireless audio equipment and have been highly successful in recent years. The company’s performance was particularly impressive during 2021 and 2022. Sonos devices are controlled through mobile apps and the planned update was meant to be groundbreaking—offering both competitive features and enhanced integration for households with multiple Sonos products.
Large app rewrites are notoriously challenging, and many fail to deliver their anticipated value. Despite these known risks, Sonos proceeded with:
An aggressive fixed timeline
Simultaneously organizational changes
While some blame their choice of Flutter as their app framework, technical decisions rarely cause complete failures like that. Success depends more on:
Architecture
Realistic timelines
Proper budgeting
The original app was straightforward, but the new version was complex from the start. A fundamental truth in software development is that complex systems require multiple iterations to work properly.
The ideal approach is to start simple, release, and iterate—but rewrites often ignore this principle in favor of adding numerous features at once.
The result was devastating: customers couldn't properly use their expensive sound systems due to malfunctioning software. Look at the app store; the ratings tell a funny story.
Ultimately, Sonos CEO Patrick Spence was forced to resign following this catastrophic app release, which reportedly set a record for the most money lost during an app update. This unfortunate outcome overshadowed his otherwise positive contributions to the company.
For a more fun retrospective of that disastrous app launch, have a look at the Fireship video.
Meta's Policy Changes
In the past couple of weeks, Meta has implemented several major policy changes:
Performance Management: 5% of low-performers will be exited from Meta and replaced with new hires
DEI Program: Meta eliminates its diversity, equity, and inclusion program
Content Moderation: The company stops automatic fact-checking program, switching to community notes
The latter two changes reflect the current political climate in the US.
The first change shows Meta adopting practices similar to traditional enterprise companies like IBM, which have long used performance-based exits. While percentage-based removal of low performers has been uncommon in big tech, since the end of the zero-interest-rate policy, we've seen repeated rounds of layoffs—even as companies report record-breaking revenues.
Seek Goals That Will Change How You Live
A couple of people asked me how I find time to write every week. Well, I defined it as a goal and kept my goals as small as possible to achieve it. I write without aiming for perfection. I often wanted to start something like this in the past, but I was rarely happy with the results. I'd spend too much time on research, and my posts would end up reading more like academic papers than blog articles, and then worse, I never published them.
Now, I give myself a time limit and stick to it. I know my articles aren't perfect, but they help me clear my mind and improve my writing over time. You need to allow yourself some flexibility, though. There will be times when I write less than I do now, simply because other aspects of life become more stressful—and that's okay.
So, as written in this blog post https://candost.blog/seek-goals-that-will-change-how-you-live/:
Define goals that will form habits rather than ones you’ll complete and forget about.
Product Engineer
Recently there has been a growing trend of a new title called "product engineer." These aren't traditional engineers—they focus on building solutions that provide value to users beyond just writing code. I agree with Annie Vellas' article that this is somewhat amusing, as I've always believed this should be the standard engineering approach. A product engineer is someone who:
Solves problems
Participates in customer meetings
Challenges assumptions
Takes an interest in customer behavior and business outcomes.
One of their key priorities is achieving quick product validation cycles to gather rapid feedback from users.
Surprisingly, many still view engineers as mere code writers. This limited perspective leads some to conclude that AI will replace software engineering jobs. However, they might not have encountered actual product engineers.
Tools
MarkItDown
I just discovered this today: a Python tool that converts various file formats to Markdown. This is particularly useful since Markdown files can be easily used for data analysis, indexing, or feeding into LLMs.
It supports:
PDF
PowerPoint
Word
Excel
Images (EXIF metadata and OCR)
Audio (EXIF metadata and speech transcription)
HTML
Text-based formats (CSV, JSON, XML)
ZIP files (iterates over contents)
It can even analyze images and generate descriptions for them.
Thank you for reading my newsletter!
Have any suggestions or want to connect? Feel free to message me on Bluesky or Threads.