1. “People aren’t born anymore; they’re grown”
Well then, since you’re still here, let’s continue. “And I will show you how deep the rabbit hole goes” © 🐇
Let me tell you how the product development process works — we’ll walk through the steps from the very top, global level down to the very bottom: writing code. I think a few interesting discoveries are waiting for you…
Modern IT products are no longer “written”; they’re built. They’re assembled piece by piece from libraries, frameworks, third-party programs and products, or they use remote paid or free internet services altogether 🧩.
A modern product is a whole zoo of technologies, services, solutions, and processes. Some of the work is done by people, some is automated, and the remaining 90% is carried out by cloud services in data centers ☁️. The world isn’t what it used to be.
But the first thing you’ll notice is constant change. You no longer write programs; you make changes to them.
2. Constant change
You’ll come to work and join a team of 20 people that has been working on the product for 5 years already. Users currently have access to its 7th version. And your task will be to make changes to this product. Small ones, so you don’t scare away the current active users.
And it won’t be easy, because the product is already running. It has customers, and they pay money 💰. So you can’t break anything. Making changes to a product that’s already in operation is several times harder than working on a new one. That’s why there are special standards, migration protocols, and utilities. This immediately brings to mind a joke:
Two old friends meet: one became a mechanic, the other a surgeon... Each has their own life, worries, joys... They tell each other about everything, and then the conversation turns to salaries. The auto mechanic says: “Well, I make about $30k a month and I’m very happy with it — how about you?” The cardiac surgeon says: “Well, I make about $100k per operation...” The mechanic gets interested: “That’s strange, why such a big difference? Looks like we do the same thing — we replace parts.” And the surgeon says: “Well, let’s go to the car — start it up...” The mechanic starts the car, the surgeon opens the hood and says to the mechanic: “See that the engine is running? Replace it!” 😂
Even if a miracle happens and your team spends a whole year building a product from scratch and only then releases it, do you know what happens next? If your product becomes successful, the product owner will want to keep developing it. Release a new version, add some functionality. Or at least run a few experiments. And do you know what follows? Changes 🙈
3. Product value
From the perspective of modern development, the only code that has value is code that’s already been released, and the only feature that has value is one that users actually use. If you wrote code, it’s stored somewhere, it runs, but people don’t use it, then its value is close to zero. That’s why all code should reach production as early as possible 🚀
Your code must go through these stages:
- ✔️ You wrote it and made sure it works.
- 🔍 Your TeamLead reviewed it and merged it into the main branch in Git.
- 🧪 Tests during the build showed that you didn’t break anything important.
- 🧩 Integration tests showed that the product works as intended.
- 🛡️ A QA tester checked this code and gave the green light for release.
- 📦 Then you need to build a new version of the product and release it to the server.
- 🐳 The new version of the product needs to be packaged into Docker Images and released.
- 🗄️ You may need to run migration scripts and apply changes to the database and/or other third-party solutions.
- 📊 Then you need to collect logs on the server to make sure everything works as it should.
- ⏪ In case of an emergency, if you broke something, you need to roll the build back, restore the previous state of the database, and not lose the actions users performed while they were working with the unstable version of the product.
In most companies, these tasks are solved now: new processes are set up, dedicated people are hired, special security protocols are introduced, and quality-control standards are implemented. The larger the company, the less time passes from writing code to the moment it reaches production and turns into value — starting to benefit people.
In most companies, code goes through this path in two weeks. However, there are companies that release every week or even every day. A few special outliers do it several times a day.
Written code is worth nothing. Value is created only by code running in production.