How many times have you heard someone say ‘Let’s develop a system like that ourselves and save some money’. ‘We can do it much cheaper’? I know I have – sat both sides of the table – and have heard it many times since, but most commonly as a software vendor who is frequently asked to come in and rescue people…mostly from themselves. There’s a good reason why software companies like RMS exist and it isn’t just because they are the best at what they do. Let me share with you a few reasons why I believe internal software development is a bad idea…
Research – It amazes me that some retailers persist in the ancient art of software development in an age where every single business process has already been coded. Not only is it slightly conceited that any retailer can compete with dedicated software companies (yes, I work for one), but also that the result is predictably the same – a single snapshot mimicking existing processes with little measurable business benefit or improvement. Think of it another way – tiny uncoordinated steps to oblivion.
Each step always appears to have been based on an urgent response to change and rarely manages to take a holistic and integrated view of the overall business need. Of course, this is based on necessity and retailers rarely have the luxury of a dedicated development team whose very existence depends on delivering excellent supportable code that exactly fits all aspects of an organisations needs, on time and on price.
But what lacks most inside every retailers’ internal development resource is the HUGE window into hundreds of other retailer’s great ideas. It’s every software companies job to keep up with these needs and feed them into their product map so they don’t have to ‘go it alone’.
Resource – For retailers, their IT resources are quite finite. A few Software Developers here, a couple of Project Managers there, an IT Manager (who might stay the course of the project, depending on how much of his reputation he has put at stake). But what else are these people working on? How much time can they give to the project? What’s the Product Life Cycle going to look like? Where is the thought leadership coming from? Who will prioritise the Features Backlog? Who is the final decision-maker? Who is to be the Product Owner?
I can guarantee that out of a team of five, at least four people will have differing opinions on ‘what good looks like’ and each will propose at least four different versions – Unless you have the resource to commit, clearly define and assign the role of the Product Owner, you and your team might find it difficult to develop a system that everyone is happy with, which often leads to the team doing and redoing certain features over and over again.
Responsibility – The reality is when retailers think they want to ‘go it alone’ people get excited. You and your team may have worked on so many projects together that project responsibilities shouldn’t really be an issue. Everyone knows their place and what they do – business analyst gathers the requirements, project managers plan the activities, programmers write the code. Simples….
People get excited at the prospect of developing software of their own. They work together to come up with great ideas and enhancements to whatever it is they think they are developing, cool stuff that will make whatever it is truly great. Such collaborative work is extremely industrious, it’s stimulating, fun and really a piece of cake until it’s time to finalise the scope of the project and set down some timelines.
Roles – Projects are complex things. Sets of activities performed by groups of people, leading to a pre-defined goal. These activities are connected by mutual relations and dependencies, and they often need to be performed at a specific time within a project life cycle, within scope, budget and an agreed timeline. Project Managers are a bit like air traffic controllers – they make sure everyone goes in the right direction at the right time, and that the project finishes in a timely manner. And finally, Programmers – the bearded, bespectacled and respected muscle of all IT development projects. They estimate how much development time the system or feature will take, and above all, they write the code.
In the end, it is the quality of their work that makes any developed system good or bad and just as with our customer projects, people need to feel they’re responsible for certain tasks and aspects of the project to stake their own personal pride into the end result.
RMS – The truth is developing your own software internally is not easy, even for the most experienced of IT companies. And it’s not because of the lack of good ideas or the skill to do so internally – it is the lack of insight, research, resource, project ownership and ongoing lifecycle that pose some of the greatest challenges.
RMS have a proven, tried and tested product. We advise more than 80 leading retail brands on the best solutions, but it’s up to the client to decide which bits they want, how the system can work for them and to some extent, what it looks like. We don’t take it personally if they don’t agree – this might not necessarily be the case with internal software development teams, where the relationships between team members are a tad more personal.
Your business needs instant gratification to today’s and tomorrow’s business problems. Metro can be delivered in days ‘straight out of the box’ making your business instantly more efficient and competitive.
Contact RMS to find out more