It can be very challenging and overwhelming to develop technology and software for an early stage startup. Just as it takes a village to raise a child, it takes a diverse spectrum of roles to deliver projects successfully!
In my last post, I talked about the Three Software Mistakes that Strangle Startups. Now that you’ve decided not to make those mistakes (right?), I will introduce you to the five roles which are a must have to launch your software on time successfully. I believe any successful software delivery needs the coming together of these 5 roles at the very least.
NOTE: These are ‘roles’ — not necessarily full-time people. Multiple roles might be played by a single person. In fact at browndeck.com sometimes we have as few as 3 people playing all the 6 roles.
So, let’s discuss these key roles.
Chief Technology Officer (CTO): Every startup has a “CTO” — or someone with that title. However, if your CTO is just troubleshooting software or trying out programming ideas, you aren’t getting what you need.
Returning to the analogy of building a house (from my previous blog), would you start building without an architect to visualize the final outcome and guide you through the myriad decisions which have to be made? No! A good architect considers everything — from the size and direction of the lot to the neighborhood conditions to the macro and micro economic factors.
Your CTO should be operating at this level in business — keenly knowledgeable about your business parameters, competitive landscape, technology trends and regulatory environment as well as the future direction of all these variables. Yes — he is very tech-savvy but that is just the first skill towards being a good CTO.
Many startups executives have a colleague with software or even some management experience who shares their enthusiasm for launching the company. Making that individual CTO may seem logical. But when things go wrong or go very very slow, that shared enthusiasm isn’t going to bring the right product to market. In fact, disaster can be more painful if you were counting on a good relationship to help you get through tough times.
So, look for a CTO who will focus on innovating, anticipating and consistently outmaneuvering your competition — not just someone who knows a bit of technology.
Your team needs a blueprint — a detailed, technical source document that informs what everyone is doing.
Product Manager/ Business Analyst: You as the entrepreneur have the vision and the dream. You are going to change your part of the world because you know that market best, you know the dynamics of that market and the various players. You have a constantly evolving vision of the final product in your mind. The Product Manager understands that vision and, working with you and the CTO, helps with (and documents) idea conceptualization, feature definition, feature prioritization, workflow determination, and market validation.
This role also develops wireframes and works with UI/ UX designer to get the screens ready. You want this person constantly asking questions such as (and these are good questions for everyone to be asking anyways!):
· How will this come together?
· What will the customer experience be like?
· How can we make it more intuitive?
· What can we do to reduce complexity for the customer?
· What should a design that exceeds customer expectations look like?
Chief Architect/ Solution Designer: You have the vision, CTO has fleshed it out, Product Manager has defined what needs to be done — and now we need to know HOW. How will the various technical pieces come together to make your vision a reality. Which technologies will be best? Should we make a specific piece of technology or buy it off the shelf? What will the data flows look like? How will the API calls to and from the partners look like? How often will the mobile app talk to the database? Is an email notification better for a specific use case or a text notification? These are just a few of dozens of questions which will need to be answered, documented and made to work together.
A good Architect knows the whole solution and the end-to-end architecture forwards and backwards — If the Product Manager comes up with 2 new features, the architect should be immediately able to comment on the impact on the platform.
Project Manager: This role is all about accountability, timelines, deliverables and budgets.
A project manager makes sure the whole team is communicating well and is following the right protocols. This role also tracks the project status, any risk factors and resource condition. The PM always knows where things stand and where they are going.
Developer/ Engineer: Finally someone has to make the magic happen! This person writes code, performs unit testing, and makes sure the code is high quality and error-free. This role is of course so important that most of the startups just go ahead with this role — and that seems to be very intuitive but is a recipe for delayed launches, suboptimal use of time and a broken software. Only if the 4 roles above have been executed well, the developer will be able to work his or her magic!
“One reason we love our work is the joy of bringing our advanced, experienced software development team to the dynamic disruptive innovators behind so many of today’s startups. We’d love to help you!” ~Assim Gupta, CEO, Brown Deck Innovation