#4 Idea to Product: Choosing the right developer

You know what you want, you made sure as much it’s possible that your audience is interested. It’s time to talk to some developers!

Maté Gvo
5 min readOct 3, 2018

Where to look

Marketplaces?

The first search might take you to an online marketplace for freelancers.

Marketplaces create unhealthy competition, where cheaper offers win. In best case scenario, an unexperienced freelancer makes an offer they cannot deliver, and you end up having to start again somewhere else. You also initially receive countless offers, and just to filter out the spam, is such tedious work, it will take away any fun of actual work.

Your network

Projects I work on come mostly from my network. I don’t advertise. I am not looking for work. It’s 100% networking. Usually someone I’ve worked for/with recommended me.

I find this important, because product development is a collaboration and requires trust on both sides. I need to trust you, as someone hiring me, to make the right choices. While you need to trust that my choices and advice related to technology are correct too. Do you know any developer? Ask around, share on social media you’re looking for someone, respond to recommendations. Take your time. It’s great start to exchange a few emails, have a few conversations, get to know one another before deciding to work together. Development is a creative profession, and such requires that both parties enjoy the process, respect each other and are enthusiastic about the results.

Skillset

I suppose it is tempting, if the only tool you haveis a hammer, to treat everything as if it were a nail. ~ Abraham Maslov “Law of the Instrument”

It’s true for development too, we have our preferences. Should we use PHP or Node for the API? Mysql or PostgreSQL or MongoDB or …? I heard React is amazing, let’s use it!

Should you worry about tech-stack?

Stack is all the frameworks you will use, for your client, API, server etc.

First of all, I assume you don’t have the technical background, required to make the right choice. You have to trust the developer you’re working with. Do they offer you alternatives? Can they provide you with more information? Look up the website of the frameworks they are using. There’s another episode on this topic. Meanwhile, don’t worry about it!

When you’re prototyping, testing if your idea is interesting to people, getting the first product out there is the priority. Hence the solution of choice, is the one that allows you to deliver quickly.

What matters most is to get the job done and test faster. For me as a developer it means less work/profit from the project, but well the project itself is more important and there’s plenty of work anyway! Don’t worry about what will happen when you have 1,000,000 users.

Go for the simpler solution!

Developer with experience in the field you’re addressing

Software is simple. It’s basically processing data to a human readable interface and back. In practice, there’s huge amount of detail involved.

Try and find someone with experience bringing up a product similar to yours. Weather it’s an e-commerce, fin-tech, marketplace, social network or a photo editor — the experience from previous project is priceless. For example, most if not all the projects I was working on, involved people logging in, entering some data through form, receiving an email etc. You wouldn’t believe how much work can be involved just in setting up email service. Bits & pieces, I initially had no clue about, had to research, scratch my head over for days, and now can deliver in an hour. Prior experience is very relevant.

How much

A website or a simple app is predictable. An estimate can be guessed. If it’s underestimated and it requires some extra work, it’s hours, or days at most, not months, so it doesn’t matter much.

But the more complex the project, the more it makes sense to take the time prior to writing any code. With a time consuming project, what I found most productive, both for the client and myself, is to start with project scope and precise specifications. With good specs, work can be divided to tinies pieces which can individually be estimated precisely. As a result, there’s an expected delivery time and it allows me to contract a product, not a time spent coding. For you it means that if you invest $15,000 in your prototype, you know what you’re getting for it. Preparing the documentation is actual hard work, and it should be paid for. It’s money well spent.

For a demanding project, I recommend starting with an invoice as per the development plan/project scope, and to continue with per hour work after. With my ongoing projects, I am asking clients to create “issues” (kind of to-do’s) on GitLab, to list improvements that they want. I then go through them and estimate them individually and upon approval get to work.

  • account for improvements, changes, maintenance you will need,
  • pay for the initial time necessary to create the documentation,
  • agree on initial scope of the development. Negotiate cost of the delivery,
  • Once you know you can rely on your developer, agree on per hour fee or monthly budget of hours, and continue the development

I find it very hard to estimate another developer’s skill and put price tag on it, even with my experience. How can you overcome this problem? If you pay per completed project not per hour, you don’t have to worry about investing in someone incompetent.

One stop shop or a team

I am a generalist, and I am sharing my experience, but I have to say that in that early phase, working with the smaller team the better.

When there’s more then two people involved, you already don’t know which information was seen by everyone, when just one answered. Organising a meeting takes more time. Communication can take twice as long. You will need leadership and management skills. Things can get out of control quickly. Scaling the team is an art, keep it as small as you can, unless you know you can afford it. With two team members you will get 1.5 times work done, with three — 2 times. The more dependent one is from another. In some cases, a good developer will spend time fixing work of another one that only seemed good, plus invest his time into on boarding him to processes.

If your project is large, perhaps you can hire a team that has the experience working together.

Key takeaways:

  • Look within your network, find someone trust worthy, fun to work with and enthusiastic about your project
  • Pay for the time working on pre-development phase, such as specifications
  • The smaller team the better for the beginning
  • Don’t worry about the skillset/choice of technology, just make sure your developer can deliverDo you like this article? Please leave some “claps” or let me know what you think in comments, most appreciated! Thank you.

Do you like this article? Leave me some “claps” or let me know what you think in comments! Thanks!

Read next:

--

--