Here is a scenario familiar to many us, from engineer to CTO.
A shiny new and exciting concept has emerged. Might be a new idea for your startup, an internal application for your company or a new customer offer.
What’s the first thought that whizzes across your mind … well, it used to whizz across mine! How about …… “Let’s build this baby from scratch. Then I can be in full control”.
Hold on a moment, are you sure?
This is the article I wish I’d read once or twice in the past.
When becoming a tech leader your relationship with shiny new things needs to change.
You are now taking responsibility for their success or failure and before you racing to the CEO in a state of frenzied excitement … you need to have conducted some detailed due diligence about the key benefits of whatever new technology it is your proposing because the buck will stop with you.
One of the early issues you need to confront when considering said ‘shiny new thing’, is understand where your Core Intellectual Property (IP) is being held? What IP you hold is crucial in terms of control but also in terms of long term value for the business.
You’re building and protecting products as future value drivers so let’s unpack some of the key value drivers in a business, before you consider the benefit of taking on any new tech;
Algorithms : it’s the core algorithms that are important i.e. you may be using existing data science or AI engines but it’s your model that is key
Customers : nothing to do with your systems but actually the value of having your customers – keeping them happy is the top priority
Brand : your brand is important (often a myth at SME level) where any system you produce must level up to the Brand ethos
Execution : your USP may be around executing better than your competitors
Data : the value you hold is in your data. You may be a data aggregator and produce unique insights for customers
System as a whole : this is where value is the whole system and needs to be developed from scratch
These are the factors which generally drive value in companies which also means you don’t need to build a system from scratch but instead can use customised and/or extend existing applications to drive value.
If you need to publish information, what about using a CMS (content management system) such as WordPress, Drupal or Joomla, and then get your developer to build your own plugins that extend the system.
For a line of business application, look at extending your CRM (Zoho, Salesforce etc) with bespoke modifications or external plugins.
With a new project, you have the opportunity of mocking up the system. You can use standard tools for mocking up e.g. Balsamiq or Axure.
However if it’s a form/database type system then you can mock up with an online database (e.g. Knack, Caspio), though personally I’ve found their functionality to be lacking and recently used Microsoft Access to do the mock up (I hadn’t used it since 1998 – not changed much but had the mock up functionality I needed).
If it’s a web application, mock up with WordPress and a form plugin.
Using a slightly higher level application for mock up, might be enough for an MVP to engage and test users.
But be careful of “let’s build with what I know” syndrome – it may not be suitable.
If you need to build the system, make sure that you choose something than can scaffold a lot of the application i.e. JHipster for Java Spring or Ruby on Rails scaffolding. Then make sure you use the appropriate plugins to get more done. Finally you can ask your developer to start coding.
Remember, a developer somewhere has probably solved this problem (or part of it) before and that’s becoming ever more the case, and we haven’t started to look at the impact that low/no code is having.
For mobile applications, can you develop something quickly in the cross platform framework (ionic or react native) and refine later.
Another consideration before starting, is to understand likely usage and volumes so you can build in redundancy or estimate when systems need upgrading.
A couple of examples;
I was recently asked to verify a big infrastructure project in a large enterprise. It was using a set of Oracle tools which were then being modified to the companies needs. The project had been running a year but released very little to users. On closer examination, they were using old versions of the tools. If they simply upgraded, 90% of their requirements would be met! That was my report back to their CTO.
Some time ago, a major infrastructure project invested several million, using a major consultancy building a system based on Oracle that ended up being used by only 2 users.
A later project needed a similar system. We built it internally in MS Access for 10s of thousands and ended up with over 50 users. Pretty much the same type of users and requirements but it came down to understand using the right cost effective tool to start with.
During recent years there has been a remarkable transformation in the volume and quality of “off the shelf” applications that save the modern day developer some vital resources as they do not have to build from scratch.
Becoming a tech leader and managing a team requires you to shift your thinking about the management of technology itself.
The urge to do it yourself remains strong, I know, I’m with you. But always take a step back and see what can be achieved, with what is already out there and your developer team will definitely thank you for this.
More About CTO Academy
CTO Academy has been Ranked #2 Best CTO Course in the World. We provide online management skills training, mentoring and career development advice for tech leaders and managers around the world. Membership starts from just $49 per month, more details available here.
“The skill set CTOs and IT Managers now require are a world away from what was needed in the past. I find the CTO Academy training modules to be highly valuable resources, providing broad-based business skills and awareness essential for success in the modern workplace.” – Eli Oshorov, Sydney