Who do you need ?

... Front-end developer, back-end, full-stack, data, ... specialist or generalist, ... individual, team, agency, ...

Finding the right combination to build your vision can be tricky. Before finding a person you trust get started, you need to identify what you need. Set clear expectations from the beginning, both on what you want but also what you can provide.

So, how should you go about it ?

As always, it depends ... on multiple factors, the main ones being :

  • How technical and familiar with software development are you ?
  • How involved do you want to be ?
  • How critical is your project ?
  • What is your budget ?
  • What's your timeline ?

Let's dive into each of those a bit more :

How technical are you ?

A software project is like an iceberg. From the outside, there is the part you see, what you interact with, and what you don't.

I am not going to get deep into it here, you can see more on other articles here.

Let's take a simple example component of a website project : a contact form.

What you see :

  • A form with a couple of fields
  • Some styling to make it match your overall brand and website
  • A confirmation / error message after submission

What you don't see but need / should to be there :

  • A server process to handle the submission : email ? store in database ? (each option coming with its set of considerations)
  • Spam protection ?
  • Monitoring that the process works as expected (in case of any issue, how long will it take for you to notice the form isn't working as expected)
  • ... other elements related to hosting and serving the website if you don't already have, hosting / deployment / ... see other posts if you need.

My point here is, unless you are already technical enough, there can be a lot to think about that you may not be aware of. In that case, make sure you look for someone who understand and can describe what / why it is needed, not only building. It may be more expensive but worth it over time. You could also consider having two different entities, one to manage/drive the process and review the work, the other to build it.

How involved do you want to be ?

Or can you manage the project ?

If you have the time and the willingness to be involved in the development on a daily basis, you could go with someone that would just do the coding.

If not, look for someone who can take over those responsibilities from you. Someone able to take ownership of the project and deliver. It doesn't mean that you shouldn't be involved, make decisions, check what's happening... just that you don't need to get in as deeply and be involved in the smaller decisions.

How critical is your project ?

A small bug fix in a process run once a month isn't the same as a brand new feature used daily by thousands of users.

That may seem obvious, but it is worth reminding that you get people that can handle the work at the scale and impact required.

The less important the work, the more lenient you can be. You may not need to spend days finding the right person to change some text color. Just get it done...

Going all-in on a brand new software idea ? That $5.00/hour developer on Upwork may not be the way to go.

What's your budget ?

Let's be real here. If you can't afford it, you won't be able to get the top person. But, on any case, look for the best you can afford. Don't be cheap. You don't want people compromising on your vision based on how much they would get paid.

Ideally you can find people with a strong ethics, people who will do what's in your best interest no matter what, people who don't put money as there main driver.

However, even those people have some level of financial needs. And if what you provide doesn't meet those, you can expect even the best of them to take shortcuts.

Unfortunately, paying a lot doesn't necessarily mean guarantee that no shortcut will be taken. But, it mitigates the risks.

What's your timeline ?

Your timeline is a critical factor to decide who to trust with your project. As the proverb goes : "if you want to move fast go alone if you want to move far go together".

You need to find the right balance between what you need accomplished and within which time frame. The less people are involved, the faster you could go, less process, less communication needed, less chances for misunderstanding, ... But, it also depends on the scope of what you want to achieve. How many people would be needed to do everything quickly enough ?

Conclusion

Finding the right person to build your project is hard. There is no sure way to go about it.

Whatever you decide, it will be a balancing act between what you want, what you need, what you can afford, ... and ultimately, who you can find within those constraints.

You can be also be creative in how you approach it. There are solutions to mitigate any downsides. For example, if you are strapped on cash, you could find someone cheap to do the bulk of the work, and someone more experienced to review it. If you have some very specific needs, a specialist for those areas and a generalist to integrate within the broader project.

The more realistic you are on your situation and what you need the easier it will be to find and adjust what you get.