Moonrise deploy, the dev’s ticket to freedom

How we deploy in production

Friday 9:00 pm, I’m the last one to leave work. I had to finish coding a block for the next day that became priority 1 at 5 pm. Burnt. To add to the sudden panic/weird aura, friday was the day we decided to start a new tradition of drinking and chatting after work at 5pm, right in the open space. So after 2 beers, crackers and a tomato, I went back coding. It was already almost done, but I still needed to test it. Then everybody went home but me.

On my way to leave the office, I suddenly looked at the deserted place differently and noticed the tv we had installed just for us. It was beautiful.

Little explanation. We are a completely isolated unit in the service, all the others are in another building far away. “Devs of the lost world”, that sounds like us. We were separated to experiment new things to later deploy to the whole company. So we live like a mini start-up, we do everything on our own, we are self-contained. From the beginning of our project we had made many efforts to develop highly professionally and we particularly struggled to put our code into production in a frictionless way.

So when I finished my work, I pushed my code, and done. Nothing broke. That’s when I noticed the tv : all those green stripes, what an advancement.

This is our development stack. We use a Jenkins platform coupled to GIT where we can just push a button on the interface to deploy throughout all the testing platforms and then in production, some deployments are even automatic. Devs only have to git-push. The code is automatically tested so when it breaks, the line becomes yellowish to red. When I think of how we used to do, yeah, this is quite an advancement. This is the architecture it relies on :

Now that I think of it, this is so cool. It’s great when we can develop without worrying about what to do with our code. We can delete our code, refactor, test, it’s frictionless, our only worry is to produce good code. Of course this could be a lot more improved, and I wonder how they do it in a really professional environment. But it’s a great satisfaction, it really frees devs and let them focus on their code. Aaah we got so efficient 🙂