The world of technology moves fast, and nobody wants to be left behind. In software and data landscape, we need to stay tuned with all the new libraries and frameworks. We, software engineers, want to be close to the state-of-the-art technologies. Fortunately, there are places where experienced, competent engineers are willing to give back to the community.
A piece of knowledge sharing is a piece of knowledge gaining. Big tech companies understand how to handle various technical issues. These range from software development, database architectures to user experience optimization, or even how to create seamless applications. The ones who share those tips and tricks are giving us the best practices in similar situations.
I’d like to share with you my top 5 favorite engineering blogs in no particular order. I have followed these since the dawn of my professional career. Their articles gave me great insights and valuable lessons while perfecting my skills.
This ride-sharing unicorn’s platform must keep up with millions of events per minute. Their infrastructure can handle real-time requests and perform trajectory optimizations to find the ideal route for drivers. As stated in one of their tech stack introduction, Uber’s challenges come from their particularity. The application has to deal with physical transportation in real-time.
In the world of Uber’s service, everybody either moves (drivers, riders) or relies on something that moves (eaters). This results in a platform that drives at a quick pace. Users check their progress every minute. Everyone wants their service delivered as fast as possible. This leaves Uber’s engineers with two priorities: availability and scalability.
The Uber Engineering blog contains a diverse collection of topics. AI, Architecture to Mobile, and Data. It’s an active blog whose new articles are published frequently. I love the details of their post on how they solve a specific tech issue or a subtle introduction to their in-house tools. Looking at those efforts, we can see how a young and enthusiastic tech company approaches obstacles on the scale of tech giants.
Netflix Tech Blog
This streaming service has to face plenty of technical issues. Its application provides users with a visual experience. The engineering teams must deliver fluid and uninterrupted episodes to the audience. Nobody wants their movies to get interfered in the middle of a mesmerizing scene. What the users want is only one to two clicks between them and their “Netflix and chill” evening. That demand does put some weight onto the shoulders of Netflix technical architects.
Apart from its massive movie database, Netflix possesses as well its users’ cinematic behaviors. From that comes the secret weapon to retrain its loyal customers: movie recommendation. Based on personalized preference, the streaming service can suggest the movies that you don’t even know that you’ll love but you sure will. The magic behind this is the machine learning models that continuously tune in for every single film you pick on Netflix’s platform.
The matter of scalability is undeniable. To put out a 4K streaming service backed by predictive models based on watching behaviors is no joke. The moment we hit play, no system mistake is tolerant. In their blog, we have those lessons learned from the beginning of the company until today’s Netflix era. We can observe real-life situations coming from real-life business operations and also a startup unicorn.
The blog contains articles about networks, database administrations, machine learning techniques. Those are great insights on how to scale a real-time service and the practice behind a flawless user experience delivery. This blog remains one of my favorite digital knowledge sources. Not only because I’m a movie nerd but because of its strong engineering culture and unique know-how.
Airbnb Engineering & Data Science
The sharing economy boom exposed to the world many disruptive innovations among which Airbnb is one of the earliest and most successful. Founded in 2008, the home-sharing platform has its peak valuation of 31 billion US dollars.
Being a home-sharing platform, Airbnb’s infrastructures must ensure smooth and transparent transactions between hosts and tenants. They wouldn’t be able to do that without the engineering teams who develop and deploy one of the most reliable systems in the tech world.
I particularly admire the way Airbnb’s engineers operate their gigantic databases. A tremendous amount of listings coming and going every day. Those modifications must be reflected on their platform without a tiny delay. Airbnb’s engineers, like most of the other tech companies, have to do their homework on availability and scalability.
Airbnb’s engineering culture is famous for its openness. They build their in-house technical tools, and beyond, they open-source the tools for those who in need. Airflow is one of those tools that became popular among data engineers. The intuitive workflow management application fits perfectly into the data engineering world: data pipeline schedulers, configurable ETLs, chaining operations, etc.
Besides the data, Airbnb Engineering & Data Science offers plenty of other subjects that are also top of the world. Artificial Intelligence & Machine Learning, Web, Mobile Application, Infrastructure. I enjoy reading their pieces until this day as I always find them insightful.
According to their 2019 Q3 report, the social media platform has more than 145 million daily active users. At the time of this writing, there are on average 9000 tweets sent per second, and that’s almost 800 million tweets per day. All those events and interactions are compacted in a single application that runs faultlessly.
I relish every story from now and then from Twitter’s engineers on how they overcome their technical obstacles. I love how each social media has its set of problems to solve, and also differs from other tech platforms. In one of his articles back in 2017, the VP of Infrastructure and Operations Mazdak Hashemi explained the scalability behind Twitter’s effectiveness. There is 36% of their hardware distribution dedicated to Mesos — a clusters management system, and that’s insanely high. It means they take high scalability application deployment very seriously.
Every retweet you make, every comment you post, there’s an engineer behind to ensure that there’s no network failure, no request overtime, and no service interruption. Twitter’s engineers might not have fancy Machine Learning algorithms or an unreal amount of data. Their silent works keep up the application whose giant user base invokes billions of interactions every day without disruption.
I don’t spend as much time studying Twitter’s engineering stories as others on this list, but that doesn’t mean they’re not worth reading. With the profoundness and excellence of each article, Twitter always lives up to its technical expertise as a giant tech company.
Criteo R&D Blog
The French ad tech giant has landed the 1st place on the list of “Most active French tech blogs in 2019” created by Toucan Toco. Based in Paris, its headquarter hosts around 1000 engineers (I am one of them). Their R&D department is famous domestically for its finest engineers and the openness of the culture.
With its biggest Hadoop clusters in Europe, Criteo engineering teams do know how to deal with their data and infrastructure. Despite the humble size of the teams, the quality of engineering works is that compared to tech giants like Google or Facebook.
In ad tech, the number of transactions in a fraction of time is immense. We have displays, clicks, sales information coming every second. Constructing a real-time data pipeline upon that flow of information is every data engineer’s nightmare. But Criteo’s engineers manage to do it, and they’ve done it well.
Criteo’s engineering is not all about data. We also have stories on how they built their reliable in-house infrastructure, how they trained their Machine Learning models to optimize advertising campaign performance. I am impressed also by the level of them giving back to the community. This reflects via the number of research papers published, conference attendance and presentation, open-source projects.
I don’t promote my own company’s blog because I work there. I had taken inspiration from those blog posts even before I joined the team. I appreciate learning about every technical aspect of running a tech company. Their expertise, knowledge, and even humor is why I will always fancy a story written by my co-workers on a Saturday morning.