But while selecting React.js is an obvious choice, it’s important to select the right React developer or consultancy for your project, which requires consideration of a number of factors including experience, expertise, dependability and cost. This choice can require a significant time investment to research and analyze how a developer stacks up against the competition.
Here at FullStack Labs, we understand how difficult this is, and how important this process can be. This document is our collective knowledge on how to find the best React.js developer, not simply the most convenient or inexpensive option. We hope this guide will aid you in selecting the best developer or software consultancy to build your React.js app.
Determining whether to hire a freelance developer or a consultancy, and what size consultancy, are critical decisions that can have a significant impact on the cost, quality, and overall success of your project. Options are numerous, with widely-varying levels of pricing and skill. How to obtain the best results in the most cost-effective manner requires consideration of a number of factors.
Hiring a React.js development consultancy, as opposed to a freelance or individual React.js developer, results in certain known benefits. An established company will be more likely to have a verifiable track record of successful projects. They will often be more reliable than a freelancer, and will usually have proven protocols in place to ensure success. Their developers will likely be full time employees of the consultancy, and will be assigned to work only on your project, whereas freelancers will often try to work on multiple projects at once. However, the size of the consultancy selected can make a big impact in regards to cost, responsiveness and the overall efficiency of the project.
Larger software consultancies - those with 100+ employees - often will have numerous developers to work on your project, so there can be a larger array of skills available. However, such companies almost always charge considerably higher fees than smaller consultancies, so projects can be expected to cost more...$250,000 at a minimum at an hourly rate of anywhere from $150 to $300+ per hour. Additionally, when working with a larger consultancy it can be difficult to receive the kind of personal attention and interaction that can be provided by the leaner, small-to-medium size consultancies.
Small React.js consultancies can offer certain benefits, but also can raise some concerns. Their cost will usually be considerably less than a larger consultancy, and they might be more responsive since they have fewer clients and employees demanding their time. But downsides can include their inability to handle larger projects, questions regarding the financial stability of such a company, and the likelihood that they will not have all of the different professionals you’ll need for your project (design, project management, quality assurance, technical architects, and development operations).
A medium-sized, or “mid-market” React.js consultancy can offer many of the benefits of the large and small consultancies, while reducing the risks. Generally considered to have somewhere between 25-100 employees, a medium-sized consultancy offers the best of all worlds -- the cost savings and responsiveness of smaller consultancies combined with the resources and stability of a larger consultancy.
A freelance React.js developer can provide some benefits if you can find the right one, including lower costs / lower hourly rates, and direct, one-on-one communication. However, they may lack the overall knowledge necessary to complete an entire project. For example, they may be highly skilled in front-end development, but have little experience with design, project management, back-end development, and development operations. Using a freelancer can also be risky, since you’re dealing with an individual and not a company. We’ve had several past clients who’ve been burned when freelancers built their app incorrectly, failed to deliver on time or at all, disappeared half way through the project, or took off with the code.
Once you’ve narrowed things down, and decided on the type of React.js developer you’d like to hire, the next step is to confirm the reputation and general competence of the developers on your short list. A good way to start is often the simplest...do a Google search and look for reviews / complaints from previous clients. Here are some websites we recommend checking:
Yelp can provide valuable information from a React.js developer’s former clients, both good and bad. Yelp tends to me more of a consumer driven platform, so B2B consultancies often don’t have Yelp profiles -- but sometimes they do, so it’s worth checking.
As an example, here’s FullStack’s Yelp reviews.
Clutch is a review site for B2B agencies focused on software development, graphic design, marketing, PR, and similar professional services. Consultancies submit former clients to Clutch, and Clutch calls them and conducts an interview, then writes up the review. The reviews tend to be very long and in-depth which is great -- but since the consultancies choose the clients to provide the reviews, there’s a selection bias, which results in most reviews being five stars.
As an example, here’s FullStack’s Clutch reviews.
Google+ is another place to look. In the last few years Google has started displaying large summaries of Google+ pages and their related reviews in search results. Because of this, a lot of companies have made a push to get customer reviews on their Google+ page, making it a valuable vetting tool for hiring professional service providers.
As an example, here’s FullStack’s Google+ reviews.
Better Business Bureau — The Better Business Bureau is a good source to determine whether your prospective developer has any unresolved complaints or unhappy clients. In our opinion, the Better Business Bureau isn't nearly as effective as it used to be, and the BBB rating can't be relied upon for much. But disgruntled customers will still file complaints with the BBB, which will be displayed on their website. So it's worth checking to make sure there aren't negative reviews or open issues.
As an example, here’s FullStack’s BBB reviews.
Ripoff Report — Ripoff Report allows users to post complaints of being ripped off or scammed by a company. Its provides a quick and easy way to find out if the developer you’re considering working with has attempted to defraud former clients. The accusations are not always verified so some caution should be used here.
GoodFirms — Designed specifically to review software development consultancies, GoodFirms provides detailed information on development consultancies, including client demographics, pricing, services, and reviews.
As an example, here’s FullStack’s GoodFirms reviews.
Upwork — Upwork provides reviews for freelancers (if you feel like taking a risk), but they also have a section for agencies with customer reviews...although few consultancies are on Upwork.
Glassdoor compiles company reviews by current and former employees, which can offer valuable insights into the internal culture of the company, and employees perspectives on what the company is doing right, and what they are doing wrong.
As an example, here’s FullStack’s GlassDoor reviews.
Once you’ve confirmed their online reputation, you’ll want to ask for examples of previous work and confirm their experience, specifically with React.js.
Most React.js developers will provide examples of past projects on their website. This is a good starting point, but you’ll want to get access to the apps and use them for yourself to make your quality assessments. How’s the UI / UX? Do you enjoy using the app? Is it easy to use and intuitive? Is it pleasing to look at? Does it have an up-to-date, modern feel?
Once you're satisfied with the look and feel, it's time to take a look under the hood and confirm code quality. There’s a few ways to do this. The first step is to ask the developer to share the code repository with you via GitHub or BitBucket. If you have a technical person on your team you can have them review the code and make sure it’s up to industry standards. Is the code clean and easy to understand? Is there adequate documentation? Can it be easily maintained? Is there sufficient test coverage? Is it overly complex?
If you don’t have a technical person on your team to perform such a review, you can hire a consultant to perform a code review for you on an hourly basis.
As a final step, ask to speak with the client for whom the app was built, to confirm their experience working with the developer / consultancy. Ask detailed questions about their experience. Did the developer meet their needs? Was the project brought in on time and within the anticipated budget? If not, was the developer transparent about the need for additional time and resources? Were they fully communicative? Is there anything that they wish the developer had done differently? Have they ever referred the developer to others?
They should be eager and willing to share their references with you -- if they're not it’s a red flag. At FullStack we make it simple and easy to check our references by posting them on our website for everyone to see: https://www.fullstacklabs.co/references.
So at this point you’ve decided on either a freelance React.js developer or a small / medium / large React.js consultancy, you’ve reviewed their reputation online, you’ve reviewed and used a couple React.js apps they’ve built, you’ve reviewed their code, and you’ve spoken with a reference. As a final step, you’ll want to understand their project management process, and figure out which professionals specifically will be working on your project.
In regards to project management, the first question to ask is what type of project management method does the developer / consultant utilize? Generally, developers will use one of two approaches -- Agile or Waterfall. Agile is often considered to be a more flexible, adaptable, and user-friendly process while Waterfall can result in less efficiency as it is a sequential system, which can make it difficult to respond to problems arising in areas of production that were thought to have been previously completed. So we generally recommend and follow an Agile approach.
You’ll also want to determine what type of project management software they use. Jira, Trello and Pivotal Tracker are acceptable choices. Confirm that you’ll have access to the project management software so you can stay on top of the project. If they don’t use project management software, that’s a major red flag.
Next, ask about the timeline. Will there be project milestones? What’s the expected release date? Do they run sprints? If so, how long are the sprints and how will you know if the sprints are being completed or not? Do they have daily standups and can you attend these standups?
Finally, make sure to confirm exactly who will be working on your project and what their role will be. If you’re hiring a freelance developer, this is easy. But additional care should be taken when hiring a consultancy. Will there be a project manager, quality assurance professionals, business analyst, or backend developer on your team? What are the names and titles of each of the professionals who will be working on your project and how much experience do each of them have? Are you getting senior developers / professionals with years of successful projects under their belts, or junior developers / recent college grads who are just getting started? Also, when hiring a consultancy, make sure to confirm that they won’t be outsourcing the work to another company -- the last thing you want is to hire an expensive consultancy in the USA, and later find out that they sent the work overseas to try and save on cost and maximize profits.
You need to hire the right React.js freelance developer or React.js consultancy to ensure the success of your project. By choosing the right type of developer or consultancy, checking their online reputation, using apps they’ve built previously, reviewing their React.js code and speaking with previous clients, understanding their project management process, and getting to know the professionals who will be working on your project, you can rest assured that you’ve made the correct choice, and give your project every chance of success.
We’d love to learn more about your project.
Engagements start at $75,000.