Don’t know the first thing about hiring programmers? Well, you’re not alone.
If you’re a non-technical person, the prospect of hiring a programmer is a grim one.
How do you know if you’re hiring the right person?
Programmers spend their days writing code and making Internet magic happen. As far as you’re concerned, they may as well be Harry Potter.
At the same time, you need to hire a programmer to make an app, website, or software.
There is no way around it.
So, how do you hire a programmer when you don’t know the first thing about what you’re hiring them to do? How much does it cost to hire a programmer? Where do you look?
The good news?
There are a few easy things that you can do to make a good hire. That’s why this article will tell you how to:
- Outline your project before you hire a programmer so you know what you’ll need.
- Write an effective job description so you attract the right people for your project.
- Structure your recruitment process so you hire a programmer who’s a good fit.
Need to hire a programmer? Would rather outsource your project to a team of experts? At Iterators, we design, build, and maintain custom software and apps for your business.
Schedule a free consultation with Iterators today. We’d be happy to help you realize your project so you don’t have to hire a programmer.
Step 1: Laying a Framework – What You Need to Do Before You Hire a Programmer
The first few questions you should ask yourself are:
What does my project require?
What do programmers do?
When I hire a programmer, what do I need to ask for?
To answer those questions, you need to know what your project does and how it’s going to do it. By the time you’ve committed to hiring a programmer, the idea for your project – i.e., what it does – should be well vetted. At the same time, you may not have started your UX or system model design – i.e., how it’s going to do it.
For apps or websites, you’ll need to start with UX design. For projects like blockchain applications, you’d start with system model designs. Either way, design work is what you need to do before you can hire a programmer. Let’s take a closer look at UX.
What is UX design?
UX design is a process of deciding the experience of your product. It’s pre-work that allows you to define the scope of your project and create a prototype. You can address user needs from the beginning. Plus, going through your project as a user eliminates waste during product development.
So, before you hire a programmer, it’s important to engage in UX design so you know what you’re hiring them to program. Do keep in mind that not all projects will need UX design. If yours does, you’ll want to hire a designer to handle it before you hire a programmer.
“UX helps define the scope of a project from a user perspective. During the design phase, UX helps you deliver wireframes, flows, mockups – essentially whatever deliverable is needed so that you know what it is going to take to program your project. It’s important to remember that UX is a cyclical process that can incorporate user feedback and can also result in prototypes, user journeys, and user personas.”Łukasz Sowa, Founder, Iterators
Having a deliverable – e.g., a prototype – allows you to figure out what kind of work it will take to achieve your end product. That’s why it is important to design and map out your project before you hire a programmer.
“Step one? Build a prototype. Something that gives you feedback on core functionalities from potential users. Step two? Develop a minimally viable product (MVP). It’s the most simple iteration of your product, and it allows you to start testing and get feedback. You use that feedback to iterate again and build additional features. So, it’s a cycle – a continuous development process.”Payam Safa, Founder and CEO, Obi
Pro Tip: As mentioned, you will want to create a prototype before hiring a programmer. Why? Because you’ll have something concrete to show them from the beginning. A prototype eases your design to development handoff. Think of it as a reference point for your new developer.
Want to find out what it takes to map out and unlock the value of blockchain technology? Not sure if you need a blockchain application? Check our article: 5 Steps to Unlocking the Value of Blockchain Applications
How to Map a Project Before You Hire a Programmer + Examples
Let’s say you’re building an app. Let’s say it’s an “Uber for X” app. Your app allows people to send flowers to one another on demand. Okay, now we know what it does and you’ve already done market research to make sure Uber for Flowers is a viable product.
But how is your app going to work? How do you hire a programmer to make an app? Here’s a step-by-step checklist of what you need to do:
- UX Design
- Check Other Apps
- Select Features and Functionalities
- Split Features – Need Vs. Nice-to-have
- Create a Rough Timeline and Budget
- Choose Your Delivery
- Hire a Programmer or Programmers
Ask yourself, what is it going to be like to use my app?
When you hire a programmer to make an app, they will ask for a breakdown of the user journey. That’s why creating a UX map is good for you, your future application developers, and your end-user.
Essentially, the same would be true if you were building a website or a piece of software. You need to map out the UX or system, eventually creating a list of necessary features for your vision to work.
Here’s an example of what it looks like when you turn drafts into real interfaces:
Next, you’ll want to check out other similar apps to see what their UX or user journey is like. Note that your on demand app will have both user and admin-facing components. You’ll want to hire app developers who can work on both.
Here’s a list of common features for most on-demand apps:
- Login or Account Signup
- Matching Algorithms
- Push Notifications
- Payment Integration
- Real-time Location Tracking
- Reviews and Ratings
- Abuse Reporting
- Loyalty Programs
- Data Collection
- Data Pipeline
- Help and Support
Let’s look at the Lugg app, an app that’s described as Uber for movers. Here is a list of Lugg’s basic features and functionalities:
- Enter Details
- Get a Price
- Schedule a Mover
- Track Movers
- Communicate with Movers
- Login and Account Signup
- Data Collection
- Matching Algorithms
- Push Notifications
- Payment Integration
- Real-time Location Tracking
You could download the app as well and use it to experience the features for yourself. Do they have ratings and reviews? Do they offer help and support? At what point in the journey do these features appear and how do they appear to the user?
When looking at similar apps, ask yourself what you like or dislike about their features. How could you improve on different features? Would you be reinventing the wheel? Do you need every feature? What could you cut for your MVP?
So, you’ve mapped out your project and looked at similar projects for reference points. What’s next?
Is your project an on demand app? Not sure where to start? Check out our full, on demand app guide: On Demand App Development in 6 Easy Steps + Examples
Here’s How to List Example Features Before You Hire a Programmer to Make an App
It’s time to make a list of features and functionalities for your project. Let’s use our app example. Remember, you’d do the same for a website or a piece of software.
Let’s use the same list that we made above for common on-demand app features:
- Login or Account Signup
- Matching Algorithms
- Push Notifications
- Payment Integration
- Real-time Location Tracking
- Reviews and Ratings
- Abuse Reporting
- Loyalty Programs
- Data Collection
- Data Pipeline
- Help and Support
“When you’re talking about core features of on-demand apps, there are three general considerations. Is your user able to identify what the service is? How long is the service going to take? How much is the service going to cost? Every industry is going to have other variables, but those are the three general considerations.”Payam Safa, Founder and CEO, Obi
Once you’ve made a list of your features, it’s best to sort them. Does the feature fall into the need-to-have or nice-to-have category? When you hire a programmer to make an app, the first iteration of your product isn’t going to be the final product. It’s quite normal to develop an app in phases, for example.
First, you add the most basic features. Then you test the product with users. You use that feedback to add more features. You create a feedback loop. Test. Add. Rinse. Repeat.
Let’s go back to our Uber for Flowers example. Here’s how we would separate the need-to-have from the nice-to-have features:
You may decide that you can cut your messaging features and loyalty program for now. You don’t need them immediately for a flower-sending app. You may also decide that they are crucial.
It’s going to be up to you, your app developers, and your budget.
Still not sure which features are necessary? Ask yourself these questions:
- If I drop a feature, can people use my product to reach the end goal?
- If drop a feature, can I implement it later without user feedback on it?
- If I drop a feature, can users still use my product to complete all steps in the user journey?
Let’s go back to our flower app:
- Can the user reach the end goal and buy flowers?
- Does the feature require user feedback to work?
- Can users complete all steps required to buy – e.g., selecting bouquets or making payments?
Not building an on demand app? Have a fantastic, new idea for a dating app instead? We’ve got you covered! Read now: How to Create a Dating App – From Design to MVP
Here’s How to Create a Business Plan Before You Hire a Programmer
Once you’ve created a list of features for your project (project specs), you’ll need to make a business plan. You may want to include all aspects of the project, including things like marketing and budget.
What if you don’t know what you’re doing?
“Reach out to a mentor. Find someone who has built an app to take that first phone call or meeting with you. I’ve learned that it’s important to have someone with tech expertise supporting you when you don’t have any idea what you’re doing. I ended up getting a CTO to have the conversations that I don’t feel confident having.”Lori Cheek, Founder and CEO, Cheekd
Keep in mind that a mentor or a CTO doesn’t have to be an individual person. They also don’t have to be your employee. There are software development companies that also offer consulting-as-a-service or can operate as virtual CTOs for their clients.
Regardless, having such a person can help you make business decisions. For example, you’ll need to figure out how you’re going to deliver your product.
Let’s go back to the app example. For an app, you have to decide if it’s going to be an Android app, iOS, or both. The same goes for other types of programming projects. For example, how will you deliver software to an end-user?
If you’re at a loss, a CTO, mentor, or virtual CTO via a development company can help you answer these questions.
The next step is mapping out the business plan for the development of your project for the sake of hiring a programmer. Things you’ll want to include:
- Estimated Phases and Features
- Estimated Timeline for Phases
- Preliminary Budget for Phases
“To start, the best way to budget is to get price quotes for your MVP from a handful of development companies. You do have to understand that your MVP is not the endpoint. The MVP will cost you something based on an estimate of your requirements and the rest of your budget will be additional costs to iterate and develop on top of the initial product.”Payam Safa, Founder and CEO, Obi
Ultimately, you should be flexible. But your timeline and budget should include both realistic and ideal figures. So, how do you decide what kind of team you need based on your project map?
Here’s a series of questions to ask yourself:
- Do I need a specialist or a generalist – e.g., backend or frontend developer vs. full-stack developers?
- Do I need mobile application developers?
- Do I need someone who knows the specific kind of technology I use vs. someone who is just very good at programming?
- How many programmers do I need based on my timeline?
- Should I hire a dedicated, in-house programmer?
- Should I hire a software development company?
- Should I hire a freelance programmer?
- How am I going to find the programmers I need?
Pro Tip: Here’s a list of Uber for X apps on Product Hunt to give you an idea of what’s on the market. Sources like Product Hunt are great when you need to look for similar apps.
Want to know how to hire a programmer for a more complex project? Want to know how to design a system model for a project like a recommender system? Read our article: An Introduction to Recommender Systems (+9 Easy Examples)
Step 2: Consider Alternative Methods Before You Hire a Programmer for a Startup
You may have already come to the conclusion that you want to hire a programmer in-house. You want a full-time, sit-at-a-desk employee. But that isn’t your only option. Before posting your job description, you may want to take a look at alternatives.
“Spending a ton of capital to build a huge tech team is a core theme for startups in Silicon Valley. I think it’s a mistake. As a startup, you’re going to pivot often. So, until you have a product/market fit, you need to be flexible. In that case, you want a partner who can flex with you. Wait until you have a viable product to build an internal team.”Aaron Hurst, Founder of Imperative and Taproot Foundation
The two main alternatives to hiring a programmer include:
- Hiring Freelance Programmers Online
- Hiring a Software Development Company
You should base your decision on your needs and experience.
“If you’re not an engineer and you need to hire a programmer, I would recommend that you find a partner that has experience. That could be a co-founder or it could be a person from a development company that has the expertise to build your product.”Payam Safa, Founder and CEO, Obi
So, what are the perks and downsides to each alternative?
PERKS OF HIRING A FREELANCE PROGRAMMER ONLINE
Let’s say you’ve run a thorough and prolonged recruitment process but you can’t find a programmer that’s a good fit. You could hire a programmer with less experience or talent.
But let’s be honest. You don’t want to do that.
Hire a freelance programmer. Turning to freelance coding allows you to tap into talent that you otherwise couldn’t access. The best developer for your project may be a person who lives in Stockholm or Beijing. That’s why you may want to hire a programmer online. You won’t know until you look.
DOWNSIDE OF HIRING A FREELANCE PROGRAMMER
The best programmer for your project happens to be a person who can’t make it to the office. When it comes to communication, nothing beats face-to-face, right? You may decide that it’s crucial for a group of people sitting in the same room to build your project.
It may boil down to what’s more important – talent and skill or communication and teamwork?
PERKS OF HIRING AN EXPERIENCED SOFTWARE DEVELOPMENT COMPANY
There are two main perks of hiring an experienced development company. The first is experience. They have it – you don’t.
And hiring a development company means that’s okay. They’ve got you covered.
Development companies comprise experienced programmers who build projects like yours. They know what they’re doing.
And you don’t have to waste time trying to hire a programmer with experience and skills you don’t understand. Instead, you find a company that meets your programmer requirements and pay them to build what you desire. That means they are also accountable for deadlines, workflows, and your end product.
All you have to do is sit back and wait for them to deliver.
Perk two? Hiring an experienced development company means you’ve solved the freelance programming problem. Your new team has experience communicating and working together on complex projects. What more could you ask for?
DOWNSIDE OF HIRING AN EXPERIENCED SOFTWARE DEVELOPMENT COMPANY
The only true downside to hiring an experienced development company may be the price.
Say you only want to hire a programmer and not a team. You may not want to spend your money on hiring an entire company to do the job.
Although, when you’re looking at a team from a country with a weaker currency they might cost the same per hour as it does to hire a computer programmer in-house.
Either way, it’s important to have an idea of what your development budget is in the first place. If you’re a lean startup with a dinky investment, it may be best to only hire a programmer.
You may also decide that you want the control and security that comes with vetting your own developers. Outsourcing may present too many risks. Instead, you may want to hire a programmer that you can trust to handle your data and architecture.
“I think that outsourcing work to partners wasn’t attractive in the past because communication was too hard. Now that we have incredible technology for communicating, we can work with partners around the world in ways we never could before. And that is making things that used to be ill-advised, strategic.”Aaron Hurst, Founder of Imperative and Taproot Foundation
Where to Find a Software Development Company That Meets Your Requirements
Are businesses outsourcing their projects to software development companies?
It’s more common than you may think.
A recent State of Software Development Report shows that 56% of startups already outsourced their software development to an external partner in 2017. Of the remaining few who hadn’t, 15% said they were planning to in the next year.
Outsourcing development to another company is an attractive solution. Why hire a programmer yourself when you can get experts to do all the work for you? Most will make custom solutions to your specifications without getting too technical.
Yet, you do want to be careful when choosing a service provider. Remember, you’ll collaborate with the company you choose through all stages of the project. You may also need your development company to test, debug, and maintain your product. You could end up working with these people for a long time.
You will want to be sure that the company you end up with is one that values building relationships, providing transparency, and meeting your programmer requirements.
Here’s how to get started finding the right partner for you.
First, you will want to go to Google to find a list of companies that make the type of project you want to develop. Here’s a list of keywords to help you get started:
- Software Development Company
- Software Companies
- Software Companies Near Me
- Web Development Companies
- Web Design and Development Company
- Mobile App Development Company
Start with a broad search for companies who build products like yours – e.g., software or mobile apps. You can then narrow your search to local companies if you like (near me / name of city).
You can further narrow your search by adding specifics – e.g., Blockchain Development Companies.
You’ll also want to make sure that they specialize in the programming languages you need. As an example, Iterators specializes in building scalable distributed systems in Scala and uses React Native for building mobile applications. You can find that out by scrolling down the main page of the website:
The point? It’s easier to search for specific programming languages on a company’s website than on Google.
For example, let’s say you are looking for Scala developers. When you type in “scala software development company” you will get a couple of hits for development companies that work in Scala. At the same time, search volume for such specific phrases is limited.
The result? Conducting that type of search puts the programming language first – i.e., the programming language becomes the most important aspect of your project. By looking for development companies first, you prioritize type of project and/ or location.
It’s up to you. Next steps are to review services, prices, and programming portfolios. If you like what you see, add them to a roundup of the best and ask for a consultation and a quote. It’s best to shop around for an experienced development company. You want to make sure you’re paying the right price for the work done.
That’s why it’s important to get quotes and arrange for consultations from several providers. As mentioned before, getting quotes from software development companies is also a good way to estimate your project’s budget.
Consider researching software development companies for budget purposes even if you’ve already decided you want to hire a programmer in-house.
Also, consider asking for consultations. It’s a good way to find out if you’re barking up the right tree when it comes to specifics like who you want to hire, which language to use, and which tech to use.
Pro Tip: Don’t limit yourself to local options. If you struggle to find local talent, you might want to look abroad. It’s not hard to find talented foreign developers who deliver quality at fair rates. You may reach a point when it’s more important to hire a coder and finish than it is to wait.
Step 3: How to Write an Effective Job Description to Hire a Programmer
Let’s go back to option number one.
You want to hire a programmer who will work on your project in-house. In that case, you’ll need to write an effective job description to attract the right people.
Before you can do that, you’ll need to ask yourself:
- What type of programmers do I need? (Frontend, Backend, Full Stack)
- What type of programming languages will my project require?
- What kind of experience or education do I want a developer to have?
- What kind of skills do I want when I hire a programmer for a startup or for an enterprise?
- What is my company’s culture and how do I communicate that to a potential hire?
Based on your answers to the questions above, you’ll have what you need to write a job description. Here’s a brief and general list of what to include:
- Job Requirements
- Job Duties
- List of Desired Technical Skills
- List of Desired Soft Skills
- Company Description
Under job requirements, you’ll want to consider including:
- Type of Programmers (Frontend, Backend, Full Stack, Mobile)
- Programming Language(s) (Java, Python, Scala, React Native, etc…)
- Education Level and Type of Degree (Optional)
- Level/ Years of Experience
Under job duties, include a description of what you need to be done to complete your project. General examples include:
- Overview of Project Requirements
- Prepare a Workflow
- Code the Project
- Test the Code
- Provide Maintenance
Of course, it is best to be specific and complete so you hire a programmer who can hit the ground running. You’ll also want to add expectations when it comes to the level of collaboration with other employees.
When it comes to skills, you’ll want to add both hard and soft skills to your job description. You can further split these into need-to-have and nice-to-have skills.
Examples of hard skills could include:
- Software Algorithm Design
- Android Software Development Kit (SDK)
- SaaS Programming
Hard skills are teachable. Examples of hard skill sets include speaking a foreign language or being able to operate a specific machine. Programming is a hard skill as is knowing specific programming languages. Keep in mind that your list of hard skills will depend entirely on your project type.
Soft skills are more universal. They are the skills that help employees thrive in the workspace and collaborate. To simplify, they are interpersonal or “people skills.”
Examples of soft skills include:
- Analytic Thinking
- Time Management
Do you want to hire a programmer that will work on a team? Or will your programmer need to work autonomously? Do you want to hire a programmer with leadership skills? Depending on the role, the soft skills you include on your job description will vary.
If you’re going to hire a programmer who will be a part of a bigger team, you would want to include some of the following soft skills:
- Ability to Take Criticism
Finally, you will want to add a description of your company and office culture. It is important to make sure you find someone who is a good cultural fit when you hire a programmer. Adding a company description will allow potential hires to get a feel for your company’s culture before applying.
It’s not a bad idea to add details about your office space as well – e.g., open office in a central location. What is the size of your company? Are you a startup, an enterprise business, or a family-owned company?
These details matter to potential hires. Putting then on a job description helps you weed out uninterested parties faster.
It’s also a good idea to add specifics about compensation and benefits to your job description. The more transparent you are about your offer, the more likely candidates will be to accept it in the end.
Don’t be afraid to add things like:
- Salary Range (Lowest to Highest Salary for the Position)
- Benefits (Healthcare, Pension Plans)
- Office Perks (Free Fruit, Gym Memberships)
- Self-improvement Options (Workshops, Classes)
- Flex Hours, Vacation, or Remote Work Options
Pro Tip: If you’re still not sure what to include, there are job description templates online for hiring a programmer. To get you started, have a look at Monster’s template and Workable’s template. Even glancing at a template will help you make sure you didn’t miss any important requirements.
Want to find out how AI personal assistants or chatbots can help you hire a programmer online? Interested in other easy and clever AI solutions for your business? Read our article: 4 Amazing Ways AI Personal Assistants Can Impact Your Business
Where to Post Job Offers When You Want to Hire a Programmer In-house
You’ll want to post the job description you created in various places.
First, you might want to try a site like Developers for Hire. The site gives you a questionnaire, personalizing your recommendations for job boards. Otherwise, you can go to the best job boards to hire a programmer online.
5 Job Boards for Businesses Looking to Hire a Programmer Online
Don’t forget to post your job offer on LinkedIn and Facebook. And don’t forget to leverage Facebook Groups. More likely than not there is a Facebook group in your area for people looking to hire a programmer online.
If you have no experience with Facebook Groups, go to “Explore” on the left-hand side of your feed and click “Groups.” You can then explore Groups by “Category” where you can select “Business,” which will take you to job boards.
It’s worth it to spend time looking for programmers using groups. Nearly 15% of job seekers are turning to social media to find jobs. At the same time, 41% of new hires used job boards to successfully find jobs. The bottom line? The majority of job seekers are looking for jobs online.
And don’t forget go-to options in your area if you’re looking to hire locally. You can also post your offer on regular job boards that aren’t tailored to companies looking to hire a programmer.
Finally, you may also want to consider reaching out to your network after posting your job offer online. Referrals and word-of-mouth are still two of the best ways to make a good hire. Plus, a recent study showed that 25% of recent hires found their current job through networking.
“I think word of mouth and first-hand recommendations are the best way to find a good team. I’ve posted on Facebook many times looking for developers. I’ve connected with a huge network of tech people and I’m also in female entrepreneur tech groups. It gives you a lot of resources. Then all you have to do is mention that you need to hire a programmer.”Lori Cheek, Founder and CEO, Cheekd
When you find a programmer via recommendations, you can still reach out by sending your job description along with a personal message.
Where to Look When You Want to Hire a Freelance Programmer Online
You’ve decided not to hire a programmer to work in the office. Instead, you’ve decided to start your recruitment process by tracking down a freelance developer. Do you look in the same places when you want to hire a freelance programmer?
So, where are the best places to find freelance programmers?
7 Freelance Programming Sites for Businesses Looking to Hire a Freelance Programmer
Keep in mind that hiring a freelance programmer can be tricky. You don’t want to hire the cheapest candidate, you want to hire a programmer who is cut out for the work you need them to do. Sites like Toptal screen candidates before you hire them.
Be sure to choose sites that are giving you access to quality candidates before you post your job offer. Making a bad hire costs far more than making a hire in the first place.
Pro Tip: To get an idea of how much it costs to hire a freelancer, consider using Toptal’s Freelance Developer Hourly Rate Explorer. It’s a calculator that provides you with a benchmark of freelancer rates. Plus, it’s updated daily.
Step 4: Create Shortlists of Potential Hires and Provide a Task before You Hire a Programmer
Once you start getting resumes, you’ll need to make a shortlist of the best. Keep it manageable. If you scan 100 resumes, select less than 50.
Here’s what you’re looking for when you scan:
- Programmer Requirements (e.g., 3 years of experience)
- Keywords from your Job Description (e.g., Python – Problem Solver)
- Experience/ Similar Experience (e.g., On-demand App like FlowerUp)
- Job Hopping (e.g., How often do they change jobs?)
- Quantifiable Achievements (e.g., Brought the product to market 3 months ahead of schedule.)
A brief comment on job-hopping:
It is common for startup employees to change jobs often. Not to mention that programmers are also in high demand. Roughly translated, developers may switch jobs often. Why? First, it’s the nature of their professional environment. Second, it’s the only way to get better pay and opportunities.
Before flagging a candidate for job-hopping, you may want to find out why they switch their jobs. Also, note that different environments have different employee turnover rates.
For example, a programmer from Berlin might change jobs more often than a programmer from Austin, Texas. Yet, that doesn’t mean you shouldn’t hire a programmer from Berlin or expect less loyalty from them.
Once you’ve created a shortlist, you’ll want to thin out your list.
- Phone Interviews
- Programmer Portfolios
- Preliminary Tasks
Set up a phone interview with your potential hires. And make sure that you move fast. There is nothing more important during a recruitment process than keeping the number of days between follow-ups to a minimum. Talented candidates will not wait for you. You will lose them if you don’t engage with them right away.
Once you have a candidate on the phone, you can get a feel for whether or not they will be a good fit. What kind of questions should you ask?
“One of the things I really look at when I want to hire a programmer is whether or not the candidate is in the field because they love the problem solving of software development. Because if they are just doing it for the money, there’s no purpose behind it.”Aaron Hurst, Founder of Imperative and Taproot Foundation
Asking a candidate why they got into the field in the first place is a good way to check if they are purpose-driven. Next, ask a couple of basic technical or analytical questions to see how the person solves problems.
Other things to ask for:
- Basic Preliminary Task
When you want to hire a programmer, experience is important. In fact, almost 69% of startups consider experience as one of the most important hiring criteria. Cultural fit only comes in second with almost 60% of startups saying it’s important.
Bottom line? The best talent are going to have successful projects under their belts. And that’s why you’ll want to ask for a programmer portfolio.
Portfolios are the best way to check a candidate’s experience. Ask to see finished apps, web design, or software. Also ask for Stack Overview profiles and examples of after-hour projects. What are you looking for?
First, you want to make sure that their experience translates into real results. Second, you want to see whether or not the candidate has experience handling projects like yours.
It’s now common to ask potential hires to complete a coding test so that you can assess their skill set prior to an interview. You don’t want to waste your time. You want to make sure the person took the time to read your job description.
It’s not uncommon for job seekers to respond to several offers that look even remotely promising. Having a potential hire do a task or a coding test that’s related to your project is a simple way to make sure you’re all on the same page before the programmer interview.
Once you’ve weeded out several candidates, it’s time to hire a programmer.
Now, you’ll want to assign a proper task or audition project that tests algorithmic and coding skills. If you already have a programmer on staff, it isn’t a bad idea to pair your candidate with this employee. It also gives you a chance to see how they work on a team.
Choose a task that is similar to the work they will be doing for you once they start working on your project. Alternatively, give them actual work to do. Some companies will even pay candidates for the time they devote to completing a task or an on-site day.
It’s a win-win. You get to see if they can do it and if they can, you have finished work.
Pro Tip: Not secure assigning a technical programming task? There are lists of ready-made assessment tools online if you don’t have the resources or know-how yourself.
Step 5: What Does a Programmer Do? How to Prep for a Programmer Interview When You Don’t Know
They’ve done the tasks and coding test. They’ve provided you with a programmer portfolio. And they look promising.
So, what’s next? The programmer interview.
How do you conduct an interview with a potential hire when you’re not 100% sure what they do? According to Aaron Hurst, it’s all about pattern recognition.
“Developing software is really about pattern recognition. There’s a night and day difference between programmers with active pattern recognition and those who reinvent the wheel. When you hire a programmer, check to what degree they pull from a database of patterns in their head versus starting from scratch. You want someone who can go to a library of open source code, pull what’s needed, stitch things together, and deliver a solution.”Aaron Hurst, Founder of Imperative and Taproot Foundation
Once you’ve established active pattern recognition, move on to regular interview questions. What you’re looking for is cultural fit at this point.
Your candidate has proven that they’ve got the skills it takes. So, make sure that they are the type of person you want to work with long term. It’s here that you can revert to basic interview questions like – “What is your greatest weakness?” “Why did you leave your last job.”
Pro Tip: If you have a CTO or brought on a technical co-founder, let them take the reigns. If you have an HR person conducting the recruitment process, have them join you during the interview process. If you’re it and you’re not comfortable discussing tech, focus on cultural and personal fit.
Step 6: After You Hire a Programmer, Provide Clear Instructions and Proper Onboarding
It ain’t over till it’s over.
Your recruitment process doesn’t end when your new hire parks their khakis at a desk in your office. After you hire a programmer, you must follow up by providing proper onboarding.
Yes, hiring a programmer is a complicated and expensive process. Onboarding a programmer is even more so.
“Usually, when you hire a programmer, the major cost is the initial onboarding for your project. It’s not the money you spend on your recruitment process. Onboarding is a lengthy process that can take up to 3 months before you see any return or major progress.”Łukasz Sowa, Founder, Iterators
Why does onboarding take so long? Because you aren’t only showing them where the coffee machine is or giving them a company email.
When you hire a programmer, they must also go through the process of project onboarding. Programmers must become familiar with:
- Project Management Tools
- Coding Conventions
- Local Environment Setup on their Computer
Depending on the size and scope of your project, onboarding can take anywhere from half a day to a few months. Your project might also have special programmer requirements that draw out the onboarding process. For example, security training.
And that takes us back to the beginning. To onboard a new programmer, you’ll need to show them the blueprints for your project. Plus, all the standardized documentation for workflows, tools, and coding conventions specific to the project. It’s a lot to learn.
That’s why it’s not a bad idea to make sure your new developer has a mentor or another team member they can rely on when they get stuck. Again, if you don’t have a technical person on your team, it might be time to invest in one.
Do keep in mind that it costs 33% of a workers annual salary to hire a replacement when they leave. A programmer makes an average of about $55,000 per year, which means it will cost you around $18,000 to hire a programmer if you can’t retain new employees.
That’s why onboarding is so important. The more acclimated your employee is to the position and your project, the more likely she is to stay. Most turnover is avoidable. It’s all about making sure your employees know what they’re doing, have clear goals, and feel good in their new environment.
Pro Tip: If you’re really unsure about a new hire, consider a paid trial period. First, prepare a task that isn’t crucial to your project. Then allow the potential hire to work on it for a set period of time. Worst case – you lose a week’s worth of pay. Best case – you have a new hire and a completed task.
Hiring a programmer doesn’t have to be a nightmare. Even if you think Scala is a skin disease (it might be) and Java is an island in Indonesia (it is), you can hire a programmer. You just have to make sure you pay closer attention to details.
Start by making sure you understand your product and what it’s going to take to complete it. Use your findings to inform your choices. A little research and a good design should help you select the right type of programmers and languages for your project.
Finally, be sure to create a juicy job description, weigh all your options, and look in the right places. When you decide to hire a programmer, it doesn’t have to feel like rocket science. And if it still does, maybe it’s time to hire a technical sidekick.