Did you notice -> a Startup’s R&D department demands over half of the company’s budget. Right off the bat. This is especially true at the early stages, where the product is being developed, and quality has a direct impact on success. To make sure you (fellow entrepreneurs) spend it correctly, I created a list of tips to follow. Hope this saves your great efforts, and precious resources:
A. Coordinting between client’s needs and the development
• A startup isn’t always aware of what the clients need, which may differ from what they want (that’s a whole new topic, for a new blog article). • Most early-stage features actually ‘learn the market’. Some include in-depth characterizations, and others (the successful majority) are simple. Buttons for example may start their journey very intuitive and become more complex following a customer’s request. A button can turn into a component, a screen, and later into a leading module – a best seller. • If you start with full, in-depth, characterization for every single feature…months would pass. By the time it’s ready, the market would have moved on. • Remember – in the early stages of the startup, when a feature is released, it’s still in process. In development really. So, you are likely going to invest at least twice the time getting fit for the market. Calculate your time investment carefully. • The customer doesn’t need to receive the full functioning product. It’s a process of trial and error, with great learning, tailoring, and integrations. • Your client will be happy to hear your feedback. Consult with them, listen to feedback, advise, and prioritize.
B. Best practice – or is it?
We shouldn’t do everything by the book. We need to prioritize between what’s essential, what is core, and where to let go. • For example, complex queries for edge cases, that will never be used, or at least not in the coming year, are not a necessary investment. It should make sense from a business perspective first, and then from the R&D. Hours of unneeded development can be saved. • Core elements (i.e. home page), should be a top priority. Clean work and full attention to detail is a must. Get your best developer on the job, because it will go through a lot of changes and expansions. Only an experienced developer will ensure a smooth and quick process. • And again, it takes 20% of the time to do 80% of the functional requirements. • At times you will notice that the ‘Best Practice’/’Guru’s advise’ isn’t initially the road taken, given the business demands. However, months later it will get there naturally.
C. Ensuring innovation and version library updates
We all know how, out of the blue, Android/IOS update their security version, leading to your full software module dead. How can we avoid that? How can we prevent it, before it’s out? • Once a month make sure to invest a few hours. It’s better than investing full days in putting out fires when you’re ready with a new version upload. • Download updates regularity. It’s part of the ongoing maintenance. (You have no idea how long it takes to update a React-Native version, in a leap of just two major updates).
D. Process automation, how much should we invest?
A well-known secrete for moving forward quickly is creating process automation. But how far should we go with that? • If you find yourself doing something for the second time, write a script and share with your team. Starting with version uploads, to product QA, and all the way to – strange requests from the CEO (which likely never stop, just become stranger). • Lean. Lean. Lean. During the early stages of an R&D, when implementing the automation process, the developer turns themselves into a product manager. We all know how great of a ‘product manager’ they can be (no pun intended). A feature we invest in now may not be needed in a couple of months. So don’t go running to develop every request. And there’s no shame in embedding hard-coded elements to make it work half of the time. Just make sure to document it for future reference. • When a process is holding you back – Stand strong in front of management. Reflect the investment required and invite them in on the decision-making process. • It takes 20% of the time to do 80% of the functional requirements.
E. Information management – critical!
It’s absolutely essential to accurately manage your documentation, including the interfaces, architecture decisions. It doesn’t have to be crazy graphs and diagrams (like in the academic world) but fitted to your organization. In a way that can be read and understood by others. • Avoid crowing a ‘ruler’ over an area in the system. You never know when this person may leave, or someone new comes in. Enough said. • Updates and maintain passwords, licenses, product updates…etc. Make sure it is secured, using available tools out there. Again, this could save days and days.
F. Get to know your clients – seriously.
The developer is last in the production line before a feature goes into the ‘oven’. Each ‘oven’ hour is expensive, so let’s make sure the feature is ‘eatable’. How? • Developers should understand the client-users, what they need and what they wish for. The developer may catch errors early on, and save a lot of resources. So, invest the time in sharing information. • Join client meetings. It’s very helpful in the decision-making process and gets the product ready a few steps ahead of schedule (or a few years).
G. Go ahead, throw some code away.
NO one can foresee the future, where the company will be at, or which customers will be signed on next. But… • The developer is likely to work on things that will never be used. • The developer may re-write the code. A few times. • It may be the last resource. Painful, yet short and efficient.
Conclusion – to drink the champagne, you’ve got to take the risk
On one hand, development time is the most expensive company resource, so use it wisely. But, do not be afraid to make brave decisions and even pass on some responsibility to your team. And, did I mention… It takes 20% of the time to do 80% of the functional requirements. *Note that some of these don’t apply to full technological products that focus on full feature software.