Good Developers Don’t Always Make Good *Freelance* Developers

good software developers aren't always good freelance developers
Summary:

Good developers ≠ good freelance developers, often. Learn how to tell a good freelance developer from a not-so-good one.

Picture this: you’ve just met someone. He or she is charming, good-looking, and seemingly perfect for you. You go on a date, however, and find out you’re better off just being friends.

This dating analogy can, in some ways, be carried over to hiring freelance developers. Just as with dating, someone can be an awesome person and really good at what they do, but still not be the right fit for you.

A good developer isn’t necessarily a good remote freelancer.

Just because someone is a coding genius in the office doesn’t mean that they will thrive in a remote or freelance setting. If you’re hiring a freelancer, keep this analogy in mind before you hire, even or especially if the candidate is a referral.

Before hiring a remote or freelance developer, consider their time management skillscommunication skills, and how much of a team player they are.

Read on for popular myths about on-site developers being good freelance developers, interview questions, and best practices for helping a good developer transition into a good remote freelance developer.

Looking for top talent fast? See how Arc can help you:

⚡️ Find developers, designers, marketers, and more
⚡️ Freelance or full-time remote + fully vetted

⚡️ Save up to 80% with global hires

Hire top talent with Arc risk-free →

Good On-Site Developer vs Good Remote Developer

Technical skills and portfolio strength are only two factors out of many that impact hiring decisions. Although many CTOs and team leads know how to evaluate how well someone can code, three main considerations they should keep in mind when making a hiring decision are a developer’s time management skills, communication skills, and desire to be a part of a team — factors the Arc team keep in mind during our intensive vetting process.

Time Management Skills

While time management skills are important to have overall, as an on-site developer, time management skills are essential but not as critical as they are for remote or freelance developers.

Although on-site developers also have deadlines and deliverables, it’s relatively easier for problems to be resolved and solutions to be discussed in person, reducing the potential difficulties that may arise from poor time management.

For remote or freelance developers, time management skills are critical — poor time management can lead to assignments being done consistently late or not at all, which is damaging for both the developer and the client. Using the right time management app is also very useful.

Read More: Key Analytical Skills to Look For When Hiring Software Developers

Communication Skills

Communication skills are invaluable for remote or freelance developers. The ability to tell clients that they’re going to be late on their deliverables or explain why a feature wouldn’t work the way a client thinks it will is a make-or-break skill for a freelance developer.

Although on-site developers may also tell their team leads that they’re going to be late on a deliverable, their team lead acts as a middleman between the developer and the client or management. This means that although an on-site developer missing a deadline is bad, the potential for disaster is more limited.

Therefore, while communication skills are important for both on-site and remote developers, for a good on-site developer to be a good remote or freelance developer, communication skills are important to have in spades.

Team Player

Part of being a team player is fitting into company culture and getting along with one’s coworkers. For an on-site developer, culture fit is important — for a lone wolf to be forced to socialize with coworkers on a daily basis could be a very stressful experience.

That being said, for a remote or freelance developer, getting along with team members is beneficial but not essential. A freelance or remote developer may often only interact with one or two people in their new (or temporary) team. Therefore, as long as they can work together without butting heads, they’re sitting pretty.

importance of soft skills when hiring remote freelancers to work on software development projects

Read More: 10 Ways to Improve Engineering Team Leadership Skills

Time Management Skills

Myth: A good developer will be a good remote freelance developer because they’re used to turning in their work on time, on-site, so it’s not a stretch to carry that over to remote or freelance work.

Reality: A good on-site developer may be used to working in a more structured environment, with dedicated break times and meeting times.

A rookie freelance developer may not be used to having a lot of free time and structuring his or her schedule in a productive way if you don’t have your expectations set out clearly.

An otherwise good on-site developer may struggle with time management skills as a remote or freelance developer.

giphy.gif

Interview Questions to Ask

  1. When did you start freelancing, and how many projects have you completed as a freelance developer?

Ideally, the answer would be neither “this is my first time” nor “zero,” but if it is, it’s also not the end of the world. Ask them about collaborative side projects they’ve done or to expand on their contributions to open-source software to get an idea of their experience working on projects with others remotely.

If the candidate seems like they’ve had experience working with others remotely, preferably with some sort of deadline, that’s a good sign that they could be a good remote freelance developer even if they don’t have formal experience freelancing.

  1. Describe your typical workday and break it down in terms of how much time you spend on each task.

This question should give you a good idea of how your candidate prioritizes their tasks and time in their office or at home if they work remotely. He or she should be able to tell you how much time they spend on each task they do and why they’ve chosen to delegate X amount of time to that particular task.

The answer will vary depending on the candidate in question and their amount of experience, but the rule of thumb is that they should be able to prioritize tasks, manage deadlines, and be able to explain their reasoning for their time delegation.

How to help: Provide your freelance developer with clear deadlines for deliverables, preferably broken down in order of priority. Don’t just say, “I need this done in six months, see you then!” By giving your remote freelance developer deadlines for specific chunks of the project, you’re giving him or her a better idea of how to structure their schedules to meet your deadlines, which helps both of you in the long run.

Need to know how to attract the best candidates? Learn How to Write a Software Engineer Job Description that Attracts the Best Developers.

Read More: Problem-Solving Skills for Software Developers

Communication Skills

Myth: A good developer is used to communicating with a team lead or manager, so they’ll have no problems talking to a manager in a slightly different setting.

giphy.gif

Reality: A good developer may be used to working closely with a team lead when it comes to meeting their deliverables daily or weekly. He or she may have frequent access to their team lead or manager and can ask about deliverables or report delays at any time.

A good developer working as a remote developer might need to learn to be more proactive and vocal about deliverable deadlines and project requirements than they are used to.

Keep in mind, though, that not all good developers are proactive about asking questions or persistent about getting answers immediately (especially if they are remote and their client is hard to reach).

Interview Questions to Ask

  1. How do you deal with delays and setbacks in your projects?

The answer you want to hear for this is, “I let my team members/project manager/team lead know as soon as I know there will be a setback in my project.” While you do want your remote freelance developer to deal with delays and setbacks autonomously, you also want to be kept informed of possible delays and setbacks on their end.

Given the nature of remote work, you want to know that your good developer can be a good communicator as a remote freelance developer. Letting you, the client, know of a possible setback means that he or she is making sure you’re in the loop, which allows you to think of contingency plans instead of being caught unawares until it’s too late.

  1. If a project requirement is unclear, how do you go about getting clarification if you and your client only meet bi-monthly?

Your ideal remote freelance developer candidate should answer, “I would be proactive and request clarification through email or a brief meeting as soon as I have a question.” While requesting clarification doesn’t take long, not all good developers are necessarily proactive when left to their own devices.

The key here is that the question asks what happens if he or she only met bi-monthly with the client. Although autonomy and independence are good, someone who proactively asks for clarification is invaluable in that they are invested in their work (and your project) and aren’t content to rest on their laurels doing nothing.

How to help: When meeting with your remote developer, be sure to ask how they are doing when you ask for updates or just to check in. While this may seem like handholding on your part, it provides not only a way for both of you to be on the same page, it also gives ample opportunity for them to voice their concerns.

Read More: How to Create a Remote Work Culture That’s Supportive, Positive & Fun

Team Player

Myth: A good developer doesn’t need to talk to others to write code. He or she is a coding genius who only needs minimal instruction to “do their thing.”

Reality: While it’s true that some developers prefer working alone, many good developers may be used to working in teams and having someone to bounce ideas off of regularly, whether in scrum meetings or in team discussion.

A good developer working as a remote developer might need to adjust to working as a lone wolf when it comes to problem solving, especially if they were used to working in a more structured environment or close knit team on-site.

Interview Questions to Ask

  1. What type of setting are you more experienced working in (e.g., a structured team at an established company, a remote team, an unstructured startup, a one-man-band)?

There is no “right” answer to this question. However, the candidate’s answer will tell you what kind of interactions he or she is used to having when coding.

If he or she is used to working in a structured team, either on-site or remotely, you might expect the candidate to be used to a certain amount of intra-team communication when it comes to solving problems or coming up with solutions.

If he or she is used to working for an unstructured startup or as a one-man band, then they might not need to talk to coworkers to spitball ideas with.

After hearing their answer, you can decide whether your company’s culture is a good fit for the candidate’s working style. If so, great!

If not, you’ll need to decide whether you want to invest the time into adapting your team culture to fit the candidate’s needs or to invest the effort into integrating them into your company culture.

  1. On a scale of one to ten, how important is it to you to work closely with others on a daily basis?

Again, there is no correct answer. This question is about determining culture and working style fit.

No matter how good the developer is, if they’re used to working closely with a team and you can’t provide that for them, they won’t be a good remote freelance developer for your specific needs, even if their technical skills are off the charts.

If your remote freelance developer candidate feels that it’s 8/10 important that they work closely with others and you like them, you have to consider if you’re willing to provide your remote freelance developer with a team member to interact with them on a basis they’re used to.

If not, you may have to settle for being just friends with this candidate.

How to help: If possible, assign someone on your team as a dedicated liaison to the freelance developer or invite them to scrum meetings. This way, if they need someone when they need to ask a question or to talk to in order to solve a problem, there’s at least one person who knows them and can talk them through it rather than a rotating group of strangers they don’t know or vice versa.

Read More: Hiring In-House vs Remote Developers: Cost & Competitive Advantages

Conclusion

Well, there you have it — even if you’re sure that the developer you want to hire is technically capable, that’s still only half of the equation.

That being said, if you find that your good developer might not be a good freelance developer and want to hire him or her anyway, you can help the transition by making it as smooth as possible by following the tips that we’ve provided here.

With time, patience, and good resources to help you and a strong freelance developer hiring platform behind you, you’ll find the developer that fits your needs.

Need more interview questions for potential engineering candidates? Read our guide with 10 Freelance Engineering Interview Questions.

You can also try Arc, your shortcut to the world’s best remote talent:

⚡️ Access 450,000 top developers, designers, and marketers
⚡️ Vetted and ready to interview
⚡️ Freelance or full-time

Try Arc and hire top talent now →

Written by
Christian Eilers
Join the discussion