Blog

Charlie and the Software Factory

November 3, 2015

Whether you’re a fan of Johnny Depp or just love chocolate, Charlie and the Chocolate Factory is a movie that is loved by many. But, you’re probably wondering what a movie about chocolate has to do with an entry on a software engineering company’s blog, right? Well, there are some surprising similarities between the world of chocolate production and software development.

Innovative technologies

Whether you’re a fan of Johnny Depp or just love chocolate, Charlie and the Chocolate Factory is a movie that is loved by many. But, you’re probably wondering what a movie about chocolate has to do with an entry on a software engineering company’s blog, right? Well, there are some surprising similarities between the world of chocolate production and software development.


High-quality cocoa and trusted IT and software resources are often both in short supply. What’s more, just like Mr Wonka has set himself the goal of producing only the finest chocolates, companies naturally want to produce and associate themselves with only the best software. Of course, the comparison only goes so far. We wouldn’t recommend a company closing its business like Mr Wonka did, or people dressing as outlandishly!


In all seriousness, to produce a quality piece of software you need talented and skilled engineering people. Despite this, according to the latest Manpower 2015 Talent Shortage Survey, companies generally find it difficult to fill around 38% of their engineering and IT positions. So how can this shortfall be overcome?


The first thing to address is staff augmentation. Staff augmentation is an outsourcing strategy which is used to resource a project and respond to business objectives. Companies evaluate the capabilities of existing staff and then determine which additional skills are required, essentially buying additional people, time and effort where required. However, the company still has to manage and handle all the overheads and training required for such staff to fit in and be useful to their objectives. As a result, it tends to be a positive solution if a project does not require any particular knowledge of a business or experience with any customised technologies that a company may already be using. However, on the downside, it is not very flexible and essentially creates an unofficial “employee” that is simply not formally listed on the company’s pay-roll.


The second alternative approach is outsourcing, especially the off-shoring variety. Outsourcing is often a seemingly more economically-viable solution, but sometimes creates unexpected problems that can undermine its economic advantages, such as the challenges presented by differences in time zones, cultural gaps, language barriers and even a lack of physical proximity.


An alternative to traditional long distance offshoring is therefore near-shoring. The benefits with nearshore outsourcing is that it provides all of the flexibility that off-shoring gives, but with the added bonus of easier communication (often with English as a working language), a greater likelihood of cultural compatibility, compliance with EU standards in Europe, physical proximity and a reduction in time zone differences.


Therefore, when it comes to companies optimising their software production, testing and servicing, mixing traditional employment contracts with modern ingredients like near-shoring solutions will help them to create a formula that Mr Wonka himself would be proud of.