Szymon Boniecki is a co-founder at Monterail, a Web development and design agency that builds meaningful software everyday. Zbigniew Sobiecki is a co-founder and CEO at Macoscope, an award-winning design and development studio that builds apps for Apple devices.
So you want to build a Web or mobile app, but don’t have the expertise needed to do it.
Perhaps you’re running a successful business and want to take it to the next level with a great, thoughtful, integrated application. But your expertise lies in what makes your business relevant—and it’s neither Web nor mobile.
Or maybe you’re no longer happy with whoever’s worked with you so far. It might be your in-house team or the freelancers you hired to get the job done quickly. Either way, you’re leaning towards trying something new.
Over the course of our professional lives, we’ve seen a lot of people like you and we know how to help. That’s why we put together a guide on finding a vendor who will build it for you. (Yes, we work at development agencies ourselves. This guide is meant to improve the process for both sides based on best practices we’ve developed working with our clients over the years.)
Let’s get started.
A couple of ground rules for your search:
- We assume you’re looking for a professional team able to deliver high-quality work. If all you’re interested in is the price factor, reading further may be counterproductive.
- Don’t limit yourself geographically; remote work is no longer a challenge. The world has changed—you will be able to find extremely good designers and developers pretty much anywhere.
- Don’t be afraid to mine your contacts for information about the shop you’re researching. If they’re as good as they say, someone will have heard of them. If not, you will probably get some helpful suggestions about other, proven teams.
- Always get a second opinion—not only when you lack technical knowledge, but also in your own areas of expertise. Double-checks will make you double-sure.
- Following this guide step by step may take a while, but it is worth it. You’re going to invest in relationships that most likely will last for years, so you have to be thorough.
- While you might find many software or design houses that don’t fit your expectations from the get-go, don’t fret—the rewards of finding people capable of doing more than you’d expect are well worth the time you put into the search.
1. Look at their website and read their blog
Check out the developer’s site and ask yourself the following questions:
Is the website at least half-decent?
If that’s the best they could do with their own website, there is reason to believe that your product won’t end up looking any better. Don’t be afraid to trust your gut after the first glance and move on with your search if anything feels wrong about it.
Look for any signs of sloppiness: typos, poor command of language—that’s a major red flag. Go deep into details. Does it look like someone really took care in designing and implementing it?
Can you see the real people behind the facade? A team unafraid to open itself up to inspection?
Is their blog frequently updated?
Are the topics relevant? Remember: great teachers tend to be great learners. Are they sharing their experiences, knowledge, tricks? You may not be an expert in their field, but you can always consult someone who is. And watch out for SEO click-bait.
Are they geeking out about stuff they care for?
Sometimes, it’s about the tone of their posts; look for excitement, strong opinions, visible commitment. Other times, it’s about working a single topic down to the bare bone. Remember: you should care whether they care.
2. Look for their contributions to the community
Do they have a dribbble presence? A Pinterest collection? A GitHub account? What do they tweet about?
There are places on the Web where good teams can show off their public work along with ways for people to get involved in local communities. Check if the firm actively participate in events, meetups and conferences.
Next, check level of commitment: are they leaders among their peers or do they just sit in the back rows and keep to themselves? If they can connect with a demanding crowd, it’s another sign of their communication skills.
It takes recognition within a local community to gather people at an event to talk about their field of work. It also takes guts, effort, and careful planning to create a meetup group, coordinate, and invest time in it instead of focusing on just earning a buck.
Lastly, are they contributing any open source projects to the community? Every project depends on dozens of open source, voluntary contributions. Yours will too. Make sure they share the love.
3. Check for references, referrals and recommendations
What’s the company’s buzz on Google like? You should not have problems finding Twitter and LinkedIn accounts of the people you are potentially going to hire.
Look for their presence and whether their work been featured by prominent developer publications, blogs or newsletters, or even shared on Reddit and Hacker News.
If they’re any good, somebody will recognize their work and talk about it; word of mouth is very powerful.
Ask for references from companies who’ve worked with these individuals, then talk to them and see what their experience was like. Good agencies will go so far as to encourage background checks.
4. Evaluate their communication skills
Once you’ve selected a couple of companies that you think might be worth reaching out to, the first thing you should do is see how well they communicate. We cannot emphasize this enough. Communication is the single most important skill you want to look for in your partner.
The landscape has changed a lot in recent years. English may not be everyone’s mother tongue and we live in different time zones, but that’s no longer any obstacle to doing business.
There are lots of teams out there who communicate better than your shop next door: we’ve seen a number of cases where iOS or Rails teams from Eastern Europe were praised by US clients as much better communicators than teams from their own backyard. Verifying all that is as simple as setting up a Skype call.
A quick rundown of things to look for, when you make that call:
- How quickly do they respond to your initial e-mail?
- Do they communicate clearly, have good written language skills?
- Are they eager to set up a call?
- Ask them what the next steps would be to see whether they say they will “adjust” (meaning: they need you to be in charge, because they don’t want to) or do they have a proven process (they should) to move forward quickly and efficiently. You don’t need expertise to run things, but they do.
- Are they on time for a call? Remember, next time they will have to be on time with their deliverables.
- Are they direct? After the initial icebreaking and getting to know each other, they should value your (and their) time and get down to business fairly quickly.
5. The product, the business or just the code
You must look for people who are really interested in your idea. Are they getting excited? Good teams won’t avoid discussing risks, prior experiences, and pointing out weak points in your ideas.
Some agencies have worked with a lot of startups. Many of them are startups themselves. Talk to them—paradoxically, their business acumen is also something that can bring you together and help you improve your business.
When you get the opportunity to chat, see if they ask business questions about your goals, metrics, market context, etc. If they ask only about the tech stuff, they still might execute your idea properly. Not great, just properly. Do you really want code monkeys?
Ask them to be honest about your idea. Check if they really think it won’t fail. Let them describe similar problems they solved for their clients in the past. They don’t need to name names; abstract examples will do.
See if they care. Because they should.
6. Take them for a spin
Not everyone realizes this, but you can and should ask your partner for a test drive. Let them show you what kind of work are they able to deliver on time, and how does it feel to work with them.
- Give them a piece of code or UX and ask them to do it “better.”
- Have them experiment with wireframes for some new feature you can describe with a few sentences.
- If you already have wireframes, let them put together a visual mockup or two.
- Ask them for some code review.
If you’re looking to change your current designers or developers, the last option is quite handy. You can ask your potential partner to audit the quality of the work created so far.
If they find any major flaws, you will not only know the state of your current product better, but it may prove useful in the process of changing your current vendor.
The best part? You’re not going away empty-handed. Even if you decide not to work with the agency you put to the test, odds are that you will end up with something you can use later on.
7. The process
The greatest sign of an agency’s efficiency and craftsmanship? Them saying “no.”
They need to be flexible with you, but to a point. In the long run, them sticking to their guns but seeing you through to the end of the project and delivering on time so that you’re successful is much better than trying to satisfy everyone every step of the way and failing just before the finish line.
It’s hard to have faith in someone that you never even met, but a good partner will always be up front with you and their process will be completely transparent. While it may not be your first startup and you may feel secure in what you already know, an experienced development shop will surely command a process that they’ve been fine-tuning for years and that they tested against countless projects.
Stay away from companies that assure you that they will adjust their process to fit your exact specifications. If they say that they will adjust to everything and do “whatever you like,” they either don’t know what they are talking about, are inexperienced or just dishonest.
Getting comfortable with the financial aspect of partnering with an external agency is absolutely crucial. After all, you’re planning on attaching yourself financially to someone you don’t really know yet. The subject of money will surely come up during your initial conversations, so neither you nor your partner should try in any way to avoid it.
You will also have to establish a policy on budget overruns early on, but respectable companies won’t shy away from that. It’s in their best interest to keep you happy, right?
- Get an estimate. After asking you lots of questions, they should provide it quickly and adjust if you want to change the scope. Ideally, the estimate will be broken down by features and phases (design, prototyping, development) and enable you to quickly establish the scope of the project.
- Get a contract draft ready and establish payment terms and deadlines.
- Avoid fixed-price projects like the plague. They were popular 20 and 30 years ago but the advent of fast prototyping and lean methodologies lead to the widespread adoption of time & materials approaches. Fixed-price can mess up your priorities and can turn out to be much more costly than the agile ones.
If you’re still unsure about the financial side of things, remember the test drive section. If you’re still not convinced after that, move on to the next shop.
Trust is the most essential and indispensable element of any meaningful relationship. That’s why we like to paint the entire process as searching for a partner, not just a sweatshop that will deliver a working product on time.
A mature partner will seek to help you, to leverage whatever makes you special while simultaneously offsetting some of the risks that you would have faced by doing it alone. They won’t just build whatever it is you want built and then forget you to move on to someone else. They’re in it for the long haul.