About me

I'm Miguel, a Software Engineer from London.

This is my personal blog where I share my views about software development and the tech industry. All the opinions expressed here are my own.

Follow me on Twitter, have a look at my Github Projects or check my possibly outdated LinkedIn Profile.

Slides, Feedback and Follow-up from my Codemotion Talk

Last weekend Codemotion took place in Madrid. It was quite a big event: 1900+ attendees, 2 days and a wide range of topics distributed in 8 tracks.

The title of my talk was Scaling your CI to a Continuous Delivery Pipeline. I tried to cover the key points of implementing and growing a CD pipeline in an organisation from the perspective of Engineering Culture. Here are the slides:

Continuous Delivery @ Codemotion from Miguel Serrano Milano

Q&A Follow-up


Keep reading

Codemotion Q&A #1: Feature Toggles and Testing

This is a follow up question from my Continuous Delivery talk at Codemotion. Please check the original post for the slides.

For an introduction to Feature Toggles check Martin Fowler's bliki. There are some comments about testing there.

Let’s say we have 2 features, A and B, that have been in development for a while. When they’re ready to be shipped the Product Owner will decide how to release them: only one of them, both at the same

Keep reading

Codemotion Q&A #2: Non-technical staff managing releases sounds like a terrible idea

This is a follow up question from my Continuous Delivery talk at Codemotion. Please check the original post for the slides.

Under a Continuous Deployment scenario we might expect non-technical staff pushing new features to the wild by just pressing a button.

If you’re worried this can potentially break the live environment, you should put your focus on the reliability of the process triggered by the button. Use this fear to drive the identification of the issues preventing a

Keep reading

Container-ts, Dependency Injection for Typescript using ES6 Annotations

During the last weeks I've been working in a personal Node project using Typescript. As the number of components grew I started to struggle when any update in the application bootstrap was required. Since most of my refactors are of the extraction type, this happened quite often.

This is clearly the type of situations where a Dependency Injection Container comes in handy. I dug into existing solutions but none of them looked like what I had in mind, so I

Keep reading

I'll be at Codemotion talking about Continuous Delivery

Good news, my talk was accepted and I'll be speaking about Continuous Delivery at Codemotion on November 28th.

This was the proposal I sent:

Scale up your CI to a Continuous Delivery Pipeline

Ten years ago we used to run multiple monolithic apps in a single application container. Config changes were applied manually. Application upgrades were risky and painful. Today CD enable teams to get code from their laptops to production as often as hundreds of times a day.


Keep reading