For my startup idea (travel tech), I decided to build the MVP before trying to find a technical co-founder since it's difficult to find good developers / aspiring CTOs this early on w/ no users.
I learned how to use Figma and created mockups to more effectively communicate requirements to the designer (a freelancer). When the wireframes are done, I'd need to hire a freelance developer but I have no experience leading dev ops... any advice?
In my years of experience, I've seen this happening all the time.
Usually, the founders underestimate the complexity of hiring freelance developers and manage them.
Unless is a very "senior" developer, usually, they will just follow instructions on your goal, but that is not enough by any mean.
If you want to hire and manage them all by yourself, you must be sure to spend a lot of hours with them, understand how they think, how they work, and what they need for a successful project.
Educate yourself on the basics of the software development cycle, and what's involved.
Developers need a lot of definitions, that translates on a set of rules.
For simplicity sake, take this example:
- you will ask your developers: Create a login screen
You will think, it's just a screen with two fields (user,pwd), but lot of things could derive from this, and developers needs definitions on each of them
- what if the user enter the wrong password more than 3 times
- what if the user is not registered yet
- what if the user has no connectivity, but still trying to login
- and this could go on and on....
Remember always that developers think about IF/THEN conditions, and their entire understanding goes by that. So define every rule.
Hope this can help.
if I were in your position, I would try to look for rising talent in meetups, github. Top tier developers will stick to bigger companies / high rates, or more likely to be thinking on their own startup.
I think you are very right trying to define very well the app before start paying anyone to develop it, I would also recommend you to keep that design still, even if you find improvements in the middle of the development process, otherwise you may end in a loop of infinite changes which can push up your budget and deadlines to the point of never ending.
Everything becomes much easier if you invest in becoming more technical yourself. Regardless of whether you can afford an agency, an offshore Upwork team or freelancer, or someone who wants to join you as a co-founder, it will be really hard to evaluate them without some of your own domain knowledge. Otherwise, you'll just buy whatever dog food they're selling (maybe it's PHP when your project is better suited to Node etc...). Either you spend time & $ getting a good technical understanding and have some confidence/expertise, or you spend time & $ (and more pain) flailing in the dark, missing signals, and mind-numbingly documenting all the bugs and sub-optimal UX issues to fix along the way, wondering where the smart person is who you should have hired...
Since it seems hiring freelancer is your best bet given your own technology limitation, here are my tips. Managing a few variables and details can help determine the success of an outsourced project. The following are some points to help you during your partnership with your agency-
Once you have done the due diligence and decided to get started with your partner, trust your decision and your partner to build the best possible solution for you. Doing so will help you stay stress-free and focus on the business aspect of your endeavor.
Communicate your doubts and queries to ensure that your software is being built the way you intend it to. If you are not satisfied with something, state it clearly. If you liked something, appreciate it. If you did not liked something, clearly share what should have been done and get it within plan for next.
Follow the processes and other protocols your partner follows for maximum co-operation and synchronization. There are chances that your dev partner has a process that has evolved from its own set of hits and misses. There is no reason to reinvent the wheel. Being on the same page as your partner is invaluable.
Incentivize your developers regularly to ensure that they are content and thus can give their best. You can build a bonus plan attached with performance rewarding the partner when they have gone over and above the expected. We recommend defining Key performance indicators (KPIs) as part of the contract and creating a risk and reward plan around it.
Most outsourcing projects are led by a project manager who is the bridge between you and the team. Build a rapport with the project manager to elaborate on your vision and help them understand your requirements. Maintaining a healthy relationship with your project manager is always a good thing.
Meeting the team personally can make the entire process feel more like a collaboration than just a business deal. Fly out to meet your developers when there is a possibility.
Hope this helps. Feel free to connect with me to discuss more on your doubts.
Yes, and had mixed results.
Dole out work in well-defined deliverables in small, manageable chunks. IE, something that can be done in a few days or a week. Build trust and never be 100% dependent upon one person for your code.
F2F meetings are important and build systems that ensure that who you interview is the same person who writes your code.
YES to "get technical enough"
I see you've already received many answers on this but I'll add my two cents any.
As a CTO myself with over 25 years of software development, architecture and management, I've seen pretty much all there is when it comes to software development.
The most critical thing for you to do is make sure you vet the freelancer as much as possible. Do not work with them off the platform. Many of the freelancers will offer to work on your project off the platform for a discount.
Defining your requirements down to the pixel color is critical. Depending on who you hire to do the development, they could have tunnel vision. This is not true of all developers. Generalizing all developers that they only think in IF/THEN conditions isn't accurate.
You definitely want to see past work they've done. When it comes to their ratings, pay more attention to their worst ratings. Many times they will show a trend, such as being very late to deliver.
Developing a MVP is a good idea. Make sure you don't get caught up in scope creep though. This will keep pushing your timeline out.
Many Investors cringe at the sound of software, app, or website development because improper planning or hiring the wrong resources can push the budget and timeline 10 fold so don't rush to hire anyone.
I'd be more than happy to help you out vetting developers free of charge. Message me if you're interested.
Better to get assistance form a technology partner.
An alternative is to also do a prototype on your own (or with minimal paid technical help) without code since you've already learned Figma, something like https://bubble.io/ or similar. This way you can test the market and your MVP without investing in development up front; it's expensive and more expensive if you get the wrong partner which you have the higher risk of getting since you aren't technical and don't have anyone to help you.
I'd be more more than willing to help if you need a technical sounding board. To clarify, not selling any services but I know how hard it is to startup from scratch.
Yes, there are two big issues I've run into over the last 15 year of outsourcing:
Workers who :
There are some simple ways to test for these.
I have been working as a freelancer plus hiring freelancers for work since long. I have found some really good talent on Upwork.
One tip that works for me is, hire individuals and not agencies. You can hire several individual freelancers, preferably from same timezone and then hire a manager to manage this team or if you have tech skills, manage them yourself, setup version control and you are good to go.