Welcome to CTO Insights #123!
The newsletter is based on top Software Engineering and Technical Leadership content from the past week, it is free and made for your weekly reading.
If you got the link from a friend, make sure to subscribe here to get a fresh issue every Sunday morning.
This week’s favorite - Writing an Engineering Strategy!
Do you want to help? Share CTO Insights with your community and friends in tech, through social media, slack, teams, or any other channel you use.
Architecture
CDN and Load Balancers
A crash course on system design!
This post offers a pretty quick way to dive into system design. It talks about:
The key principles of system design
The different components of a typical system
Scaling strategies
Examples of implementing those strategies
Tools to monitor and improve system performance
Scalability
How levels.fyi Scaled to Millions of Users With Google Sheets as a Backend
This post shares how the startup Levels.fyi went from a hundred users to over a million without needing a dedicated database or engineering team.
It’s crazy how powerful simple tools are becoming and how many options entrepreneurs currently have to innovate and grow.
Leadership
Writing an Engineering Strategy
I firmly believe you can be a top ten percent engineering strategist by simply documenting your existing, implicit strategies.
If you’ve ever pushed off crafting a strategy for improving your development process for tons of other activities, you’re not the only one.
This post shows why strategy is such an important process and how to actually get it done. The benefits can be massively worth it.
Product
Why Product Request SLAs Fail
If you’ve ever dealt with an ineffective SLA, you'll likely find the reason why in this post. It covers effective and ineffective SLAs in detail, revealing how to create more effective ones.
With this advice and the plenty of examples inside, you’re sure to improve the functionality of your SLAs.
6 Product Value Proposition Models for Product Managers
To effectively communicate your product’s value to your target audience you need a strong value proposition. But, you probably already know that.
The main benefit of this post lies in the product value proposition models that you can use to improve performance significantly.
Other
A Comprehensive Approach to Conducting Technical Interviews for EMs
You can significantly improve your technical interview game with this 6-step framework. It’s simple, it’s easy to follow, and it works!
The author explains the steps in great detail, so you won’t be left hanging. Even with these tips, technical interviews are a tough job. But, at least this will make it easier.
The Technology Behind Github’s New Code Search
GitHub’s new code search is much quicker and more scalable than the last one. It can handle significantly more queries and search across more repositories thanks to a combination of Elasticsearch and Rust-based microservices.
And that’s not even a quarter of the improvements that came with their new code search. This post makes sure to cover all of them.
GPT Is Only Half of the AI-Language Revolution
The key takeaway of this article is that machine learning is not just generation. You’ll find compelling arguments for using the encoding capabilities of AI to filter, categorize, or otherwise manipulate your domain.
Don't be dissuaded from AI on the premise that content generation is all it can offer.
DevEx Principles: Minimize Switching Contexts
Many of us have made the decision of using one tool only later decide that a different one would actually be better. It’s okay if it happens once. The problem occurs when we start doing this for all of our tools.
In this post, you’ll find some actionable tips on how to minimize switching and create a more efficient and effective development environment.
Three Layers to Secure a Software Development Organization
Here are the highlights of this one, just in case you’re only looking for a specific piece of advice:
Three layers define effective security: infrastructure, application, and development.
Infrastructure layer includes networks, systems, and physical resources.
Application layer includes authentication & authorization, data protection, vulnerability scanning.
Development layer includes coding practices, security testing, and monitoring.
If securing your software development organization is next on the to-do list, this post will help.
Closing Notes
Thanks for making it this far! 🙏
I hope you enjoyed this week’s issue. Use the thumbs up/down buttons to rate and don’t forget to share the newsletter with fellows.