~/devreads

#software development

48 posts

4 Jun

Bo Teng 10 min read

How Airbnb built a Kubernetes sidecar to deliver dynamic configuration reliably at scale. By : Bo Teng , Cosmo Qiu , Siyuan Zhou , Ankur Soni , Xin Huang , Willis Harvey Introduction In our previous post , we explored Airbnb’s dynamic configuration system, Sitar, with a focus on service architecture and configuration change safety. Now for the harder question:…

distributed-systemsinfrastructuresoftware-architectureengineeringsoftware-development

26 May

Jacob Bennett 5 min read

This was originally written and published by Christophe Spy (Director of Engineering, Medium) as an internal Medium Eng post. Desired outcomes (what “good” looks like) 🙏🏻 These are the kinds of changes we want to see if AI is going well at Medium. Less drudgery, more leverage Engineers use AI to remove repetitive, low‑leverage work (e.g. tedious refactors, boilerplate, large…

aisoftware-engineeringai-agentsoftware-development

Criteo Tech 9 min read

Authors: Auriane Bonmarchand , Carolina Tealdo & Minh-Quyên NGUYEN In our previous post , we explained the Engineering Program Manager role at Criteo at a high level: EPMs sit at the intersection of business ambition, technical reality, and execution, helping complex cross-team initiatives move from intent to delivery. But if you are considering this role, that high-level description is only…

software-developmentengineeringprogram-managersoftware-engineeringway-of-working

22 Apr

Criteo Tech 9 min read

Authors: Auriane Bonmarchand , Carolina Tealdo & Minh-Quyên NGUYEN At Criteo, Engineering Program Managers (EPMs) sit at the heart of our most complex, cross-team initiatives. We connect business ambition with technical reality, helping engineering teams ship impactful products at scale. In this article, three EPMs share what the role really looks like, why we love it, and how your career…

company-cultureengineeringsoftware-developmentsoftware-engineeringway-of-working

5 Mar

Thumbtack People Team 3 min read

Kenza Boulisfane, Software Engineer at Thumbtack, works at the intersection of data, AI, and real business impact. In this Q&A, she shares how she’s building an AI-powered Marketing Analytics Agent designed to make complex marketing data accessible to everyone. She also reflects on team culture, technical challenges, and why diverse perspectives make engineering stronger. What are you currently working on?…

careerssoftware-developmentaidatatechnology

25 Aug 2025

Raphael Montaud 10 min read

Hard vs Soft Filtering and how this applies to Medium’s Recommendation System In this part 3 we’ll see how we modified one of our hard filtering rules and attempted to turn it into a machine learning based “soft filter”. Intro : This is a 4-part series breaking down improvements to the algorithm behind the Medium’s Daily Digest over the past…

software-developmentrecommendation-systemsoftware-engineeringmachine-learning

20 Dec 2024

Hritik Jaiswal 6 min read

Forms are everywhere online, from signing up for newsletters to making purchases. But let’s be honest — nothing’s more frustrating than a form that’s hard to fill out or riddled with unclear error messages. In this post, we’ll dive into practical tips and tricks to make your form validation seamless, user-friendly, and maybe even enjoyable! We’ll walk through tips for…

javascriptprogrammingtechnologysoftware-developmentux

2 Dec 2024

Fabien RAYNAUD 3 min read

Conduct a technical migration within less than 6 months — Part 3 (final) based on Next.js migration, performed at JobTeaser What is this 3-parts article about: sharing my own experience with handling a technical migration 📖 some additional elements that I find relevant and could help (identified with 📖 emoji) but not personally tested What this presentation is NOT about:…

software-developmentnextjsdeveloper-experienceproject-management

Fabien RAYNAUD 3 min read

Conduct a technical migration within less than 6 months — Part 2 based on Next.js migration, performed at JobTeaser What is this 3-parts article about: sharing my own experience with handling a technical migration 📖 some additional elements that I find relevant and could help (identified with 📖 emoji) but not personally tested What this presentation is NOT about: technical…

developer-experiencesoftware-developmentnextjsproject-management

Fabien RAYNAUD 4 min read

Conduct a technical migration within less than 6 months — Part 1 based on Next.js migration, performed at JobTeaser What is this 3-parts article about: sharing my own experience with handling a technical migration 📖 some additional elements that I find relevant and could help (identified with 📖 emoji) but not personally tested What this presentation is NOT about: technical…

software-developmentproject-managementnextjsdeveloper-experience

1 Oct 2024

Ryan Lattanzi 6 min read

The Two Billion Claps Bug TL;DR A user was able to exploit a race condition in our backend system to manipulate clap counts on posts. Users are supposed to only be able to clap between 0 and 50 times for a given post, but this hack allowed them to go outside those bounds (both above and below). Our fix leverages…

dynamodbsoftware-developmentprogrammingbug-bounty

24 Jul 2023

Eric Elliott 11 min read

AI language models, such as ChatGPT and Claude, empower anyone to create software. These models can intelligently understand problems, create solutions, and explain the solutions. But natural language isn’t always the best way to communicate with AI. If you need to keep track of complex data and define how you interact with that data in specific ways, SudoLang can help.…

technologysoftware-developmentfutureaichatgpt

6 Jul 2023

Joyce Lin 3 min read

Get started with the Home Assistant WebSocket API In Part 1 of this series, we learned about the WebSocket protocol and how to set up our own WebSocket server in Node.js . Next, let’s explore how to use a public WebSocket API to access smart devices around a connected home. REST and WebSockets for a connected home When it comes…

home-assistantwebsocketapiiotsoftware-development

28 Jun 2023

Joyce Lin 2 min read

It’s not just developers who rely on APIs. DevOps engineers and data engineers also use APIs for many reasons, including to manage cloud infrastructure. For example, you can programmatically manage resources, configure services, and perform operations using APIs. Let’s review other reasons to use cloud APIs. Reasons to use cloud APIs In addition to providing a management console and SDKs,…

infrastructuredevopssoftware-developmentgcpapi

12 Jun 2023

Eric Elliott 10 min read

Your First Steps with SudoLang If you want to build chat bots, games, or applications using AI models like ChatGPT, you’ve come to the right place. In this article, we’re going to dive into the basics of SudoLang, a powerful natural language pseudocode programming language designed to instruct advanced language models like OpenAI’s GPT-4, Anthropic’s Claude, and others. SudoLang was…

chatgpttechnologysoftware-developmentaiprogramming

1 May 2023

Eric Elliott 16 min read

Image by Eric Elliott using PromptCrafter and Midjourney SudoLang is a powerful natural language pseudocode programming language that makes it easier to instruct OpenAI’s GPT-4, Anthropic’s Claude, and other language models. For an overview of language features and benefits, check out The Art of Effortless Programming and Unit Testing ChatGPT Prompts: Introducing Riteway for SudoLang . To gain a better…

chatgptsoftware-engineeringaisoftware-developmenttechnology

26 Apr 2023

Shahar Davidson 4 min read

Ready to take your engineering ship to Warp 9? (by Christopher Chiu-Tabet) Nowadays, everyone is examining how to increase efficiencies and cut costs to improve their bottom line. Although it may seem counterintuitive, engineering managers can help increase efficiencies by investing in tools for their engineering group that can help increase the team’s velocity and therefore increase efficiencies and the…

developer-productivitysoftware-developmentplatformstartupengineering-mangement

25 Apr 2023

Eric Elliott 16 min read

Why Every Developer Should Learn ChatGPT and SudoLang I recently started using an AI Driven Development (AIDD) process that has many benefits: Increased development productivity 10x — 20x , allowing us to take on more projects, and more ambitious challenges that would previously have been too resource-intensive to tackle. Opened up our applications to magical features we could not have…

chatgptartificial-intelligencesoftware-developmentmachine-learningai

1 Apr 2023

Eric Elliott 15 min read

Pseudocode is a fantastic way to sketch programs using informal, natural language, without worrying about specific syntax. It’s like sketching your thoughts before diving into the nitty-gritty of coding. It’s useful for brainstorming and communicating ideas with others. I have been using pseudocode to express ideas to Large Language Models (LLMs) since GPT-3 was announced in mid 2020. However, up…

chatgptnlpsoftware-developmenttechnologyai

13 Feb 2023

Joyce Lin 5 min read

Storing Postman scripts within reusable components in an OpenAPI definition In programming, “hacking” has historically meant making something do what it wasn’t originally intended to do, like using a whistle from a cereal box prize to play the tone into a pay phone to get free long distance calls. Today, it also refers to finding an inelegant solution to a…

javascriptpostmanapisoftware-developmentengineering

1 Feb 2023

Joyce Lin 4 min read

And use Postman to send and receive messages across the WebSocket connection The WebSocket protocol provides a way to exchange data between a client and server over a persistent connection. The data can be passed in both directions with low latency and overhead, and without breaking the connection. This means the server can independently send data to the client without…

nodejswebsocketengineeringsoftware-developmentapi

7 Jan 2023

Henrik Warne 4 min read

Every time I hear about software maintenance as a distinct activity, I cringe. That’s because it is based on the outdated notion that first software is developed, then it is maintained. But that is not how software development works today. … Continue reading →

programmingsoftware developmentsoftware maintenance

2 Dec 2022

Taylor Buchheit 10 min read

Photo by Caleb Jones on Unsplash Being a software engineer is scary. We are surrounded by some of the world’s most talented, intelligent minds, solving complex problems with constantly evolving technology. As a new engineer, it’s easy to get overwhelmed by the intimidating skills of our brilliant peers and the ever-changing technology we are expected to master. I started my…

software-developmentsuccesslevel-upsoftware-engineeringimposter-syndrome

1 Nov 2022

Avery Dunn 6 min read

My name is Avery Dunn and I am a rising master’s student at Washington University in St. Louis studying computer science. For the past 12 weeks, I have been a software engineering intern on the API & Platform pod of the Foundation team. I am an active Strava user and have been for approximately 3 years with my favorite activity…

software-developmentgraphqlmicroservicesapiinternships

9 Aug 2022

23 Feb 2022

David Andrade 4 min read

That’s a bold statement I know, but let me explain exactly why I believe this is true, and why I’m so passionate about it. The BBC which is celebrating its centenary this year is like no other organisation in the world. Our job is simple, to ensure that it remains just as relevant in the future as it has been…

productsoftware-developmentsoftware-engineeringtechnologybbc

15 Feb 2022

Louise Ankers 2 min read

Much like Sir David Attenborough I was not successful on my first application to the BBC , however I was not dissuaded and applied again! Fortunately, I was successful last year and have joined the BBC as Senior Product Manager — Children’s Apps. CBeebies Playtime Island app icon On my first day all the team were very welcoming and friendly,…

software-developmentbbcagileproduct-managementnew-starter

10 Feb 2022

David Buckhurst 4 min read

Hackathons, innovation days, codefests — whatever you call them — have been a feature of the tech industry for the last 20 years, and one of the most powerful ideation tools at our disposal. The premise is simple, given a theme or problem space, the hackathon participants must self-organise into teams to explore ideas, write some code, and deliver a…

hackathonshackinginnovationbbcsoftware-development

31 Jan 2022

Joyce Lin 5 min read

Learn to JAM with scripts, mock servers, and the visualizer Jamstack originally referenced a web architecture composed of JAM: JavaScript, APIs, and Markup. Websites could be delivered statically, such as serving HTML from static hosting, while providing dynamic content and an interactive experience through JavaScript and APIs. “A modern web development architecture based on client-side JavaScript, reusable APIs, and prebuilt…

codingsoftware-developmentjavascriptjamstackapi

3 Sept 2021

Pratik Shekhar 3 min read

3 Rules/Guidelines to Reduce Implementation Flaws When I hear the word “rule”, I think back to grade school. “Be quiet when the teacher is talking.” “No interrupting, you must raise your hand with a question.” But what makes this different than following a set of guidelines? There was always that one kid who never listened to the rules. In coding,…

techcoding-stylesoftware-development

20 Mar 2020

0xADADA 4 min read

This articles describes the difference between how component invocation differs when using curlies {​{...}}, angle brackets <...> or an (...) s-expression in Ember templates. Ember has three methods for invoking components and helpers in a template, either of the three can be used to invoke both classic and modern glimmer components. The “classic” syntax in the form that uses curly…

projectsopen-sourcesoftware-developmentember.jsweb development

13 Dec 2018

Molly King 4 min read

Being Reviewed Putting your code up for peer review can be a scary proposition. You’ve artfully crafted this code over multiple hours and cups of coffee. Your precious, perfect baby is about to be exposed to the big, dark, scary world and torn to pieces by your coworkers. Okay, maybe I’m overstating things a bit. But code reviews can be…

code-reviewsoftware-development

26 Nov 2018

Molly King 4 min read

Self-Review Code reviews are an integral part of software engineering, and unless you work alone, are likely to be a regular part of your work life in building software products. Code reviews can occasionally be contentious, and about as fun as a root canal, but they don’t have to be! Over the course of this three-part blog series, I will…

code-reviewsoftware-development

19 Oct 2018

Steve Swanson 3 min read

I can’t say that I was always fond of teaching. My first introduction to it was also my introduction to presenting. Many years ago, a small company I worked for held an annual conference on how to develop and work on its software platform. Having brought all the staff together, the CEO declared that everyone was expected to present. I…

software-developmentmentorshipmentoringinternships

6 Mar 2018

Daniel Schmidt 5 min read

https://medium.com/media/eef39ea5e8f053ef3fc7a6a272b9e093/href My co-worker Fabs recently wrote an article about how he get’s work done , which inspired me to write down my recent learnings about my own productivity. In the last year, I discovered different aspects of work life had a differently strong influence on my ability to work. In discussions with varying friends of mine, it became clear to…

toolsproductivityself-improvementsoftware-developmentpomodoro-technique

22 Dec 2017

0xADADA 26 min read

A summary of my notes taken while reading Programming Phoenix. Ch.1 The layers of phoenix, the endpoint is where the HTTP connection contacts phoenix, from there it goes to the router which directs a request to the appropriate controller, passing through a series of pipelines. Pipelines chain functions together to handle tasks that span across multiple controllers, such as browser…

notessoftware-developmentelixir

9 Oct 2017

0xADADA 5 min read

In early 2015, I was working at an artificial intelligence startup. My team was planning to build a web application to connect to our neural network platform. The team as a whole had experience (on the AI–side) with Python, and the web team had a lot of experience using Django. We’d implemented a hybrid-app in Cordova using Backbone.js the previous…

essaysopen-sourcesoftware-developmentjavascriptframeworks

19 Jul 2017

Nikita Sobolev 3 min read

What is a slug? The term “slug” comes from the world of newspaper production. If you have ever created a simple “Blog” application you have already reinvented it. When you need to access any post at some URL you need to identify it somehow. The simplest idea is to identify them by id, but that does not seem too pretty.…

software-developmentelixirphoenix-frameworkweb-developmentecto

8 Jul 2017

Nikita Sobolev 7 min read

Some time ago I was faced with a task of testing a bash script. At first I decided to use Python unit-tests, however, I was reluctant to bring external technologies to the project. Therefore I had to go with the testing framework written in the notorious bash. Overview of the existing solutions After googling available solutions, I was presented with…

programmingbashtestingsoftware-developmentadministration

12 Jun 2017

Nikita Sobolev 3 min read

When npm@5 was just released this question was the first one I have googled. No doubts it comes to mind since new npm version introduced a lot of yarn’s features. In other words: should I still use yarn after installing npm@5? Yarn features Why do people use yarn in the first place? npm had some known issues. Well, we all…

javascriptsoftware-developmentweb-development

24 May 2017

L 6 min read

The ability to generate mock but valid data comes in handy in app development, where you need to work with databases. Filling in the database by hand is a time-consuming and tedious process, which can be done in three stages — gathering necessary information, post-processing the data and coding the data generator itself. It gets really complicated when you need…

open-sourcetestingweb-developmentpythonsoftware-development

14 May 2017

Nikita Sobolev 7 min read

Phoenix Framework always has been awesome. But it was never as awesome as the new 1.3 release (which is rc1 right now actually). There are a lot of significant changes. Chris McCord made a great job writing a complete migrating guide . Inspired by it and by the talk Chris gave at the LonestarElixir this article will try to guide…

erlangweb-developmentsoftware-developmentelixirphoenix-framework

3 Aug 2015

0xADADA 6 min read

I’ve seen many articles and discussions online discussing the merits of merge and rebase when integrating parallel branches into the main branch. It seems there are two camps arguing “which is better” when in reality, both have their own use cases. The task we need to accomplish is to determine which workflow is right for your project. This article will…

essayssoftware-developmentversion-control

8 Jun 2014

13 Feb 2013

Schakko 5 min read

A few days ago I finished my bachelor thesis with the title Integrating Xtext in an existing Software development process. I developed a domain specific language with Xtext and some extensions for easily adding new generators as new Eclipse plug-ins. After finishing the thesis I added a Maven Tycho based build […] The post Build and deploy your Xtext DSL…

software developmentxtextautomaticbuildserverdsl

31 Aug 2012

Schakko 2 min read

Task for today was making the NuGet repository of TeamCity available in our local network. Sounds easier as it was as our TeamCity instance is available from the Internet but you can only access the rontend with valid domain credentials (LDAP/Active Directory authentication). Enabling the guest account feature in TeamCity would […] The post TeamCity: Make the NuGet repository available…

active directory ldapapachesoftware developmentnugetpacket manager

8 Aug 2010

Schakko 1 min read

Für mein aktuelles Projekt setze ich u.a. JPA/EclipseLink, Maven und Spring. Damit der Build-Prozess von Maven und das automatische Deployen in den Tomcat-Container von Eclipse funktioniert, musste ich ein paar Änderungen an der .settings/org.eclipse.wst.common.component durchführen: &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;project-modules id="moduleCoreId" project-version="1.5.0"&gt; &lt;wb-module deploy-name="YourProject"&gt; &lt;wb-resource deploy-path="/" source-path="/src/main/webap

software developmenteclipseeclipselinkkomischpersistence.xml

22 Jul 2010

Schakko 1 min read

Da ich gegenwärtig an libopenranked von etqw-openranked arbeite und ich vermute, dass ich meine Erkenntnisse nach einiger Zeit wieder vergesse, gibt es hier die Kurzfassung. Damit bei einem Segmentation Fault eine Core-Dump erzeugt wird, muss ulimit -c unlimited aufgerufen. Damit wird festgelegt, dass der Core-Dump beliebig groß sein darf. Mit […] The post Debugging von C-Applikationen unter Linux appeared first…

linuxsoftware developmentdebugfaultgdb