5 Things to Know When Hiring a Java Developer

Hiring a Java developer that is a really good fit for your project is a bit of a technical challenge. Dmytro Vezhnin, CEO and Co-Founder, CodeGym.Cc, Says this requires close interaction with the development team, as well as experience, care and understanding of the nature of these specialists.

When I started my main project, I hired all the employees myself, and now I’m ready to share my experience with the HR managers of the Java development teams.

It’s a kind of hard work that takes experience to find a good programmer. Or just a fluke. Of course, let’s not rely too much on fate: the risks are great.

However, your own experience may be fully supported by the experience of specialists who have been hiring for longer than you. In this article, we’ll identify a few things to watch out for if you’re looking for a productive Java developer and want to keep them on the team for the long term.

Not only experience

Requirements for vacancies usually include necessary experience and a list of technologies the candidate should be familiar with. Undoubtedly, they are very important and it is difficult to overestimate them. Especially if your project is urgent and you had to find a specialist yesterday. Of course, all projects are individual, but cool specialists quite often have something in common. We are not just talking about specific experience or knowledge.

I had little experience and they liked the way I communicated with them and told them about my projects. Honestly, I didn’t even get the technical part of the interview. They asked me what I did in my previous job and their plans for the future, and they told me about their project and their plans. That’s it,” says Alexey, Java Trainee Developer, who previously worked as a support team specialist. Alex was hired because the team liked him and showed himself from the first stage as someone who knows how and wants to learn. explains Alex, Java Trainee Developer, who previously worked as a support team specialist. Alex was hired because the team liked him, and he showed himself from the first stage as a person who knows and wants to learn.

Our team has several specialists, both HR managers and developers, who hire Java specialists. Here we have given some important points to help you find the right person faster

Not only write, but also read!

Of course, any Senior can read someone else’s code. However, for Junior, this could be a problem. This skill is often underestimated, alas! This is an important skill for any programmer, especially for a Java specialist. Why Java, you might ask. The fact is that very often; Java is used for large enterprise projects with hundreds of specialists. They have been supported for years and written by developers of varying skill levels. Also, if a project is maintained for more than ten years, it contains a lot of legacy code that is not easy to read. Finding tasks to read code during an interview is not that difficult.

Imprecision, vagueness, uncertainty

These three words haunt any developer throughout their life as a programmer. A formulated task, alas, is most often encountered only during training. The further the client is from the IT sphere, the more the terms of reference are vague. Sometimes they are so terrible that even project managers don’t understand them. Therefore, the ability to not get lost and try to navigate poorly worded tasks is an extremely valuable skill for a Java developer. I often give candidates tasks with intentionally left gaps. The difficulty of the task depends on the level to which he aspires. It is important to see how a person will react to these shortcomings. It is better if he notices them quickly and asks clarifying questions. In this case, it will most often produce the result you expect. In the worst case, the candidate tries to figure out the missing points on his own, and in the end, he gets something completely different from what the interviewer expects and in the future – and from the client. Here we check several points at once – the ability to see missing information, ask the right questions and work as a team. If one person is afraid to ask questions, this can greatly slow down the work of the whole team.

These three words haunt any developer throughout their life as a programmer. A formulated task, alas, is most often found only when learning. The further the client is from IT; the blurrier your tasks will be. Sometimes they are so terrible that even project managers don’t understand them. So the ability to keep up, not get lost, and navigate boldly through poorly worded tasks is a unique skill for a Java developer. I often give candidates assignments with spaces left intentionally. The difficulty of the task depends on the level to which he aspires.

It is important to see how the person will respond to these shortcomings. It’s best if they notice them quickly and ask clarifying questions. In this case, they most often achieve the expected result. In the worst case, the candidate tries to figure out the missing points on his own and as a result gets something completely different from what the interviewer and, in the future, the client expects. Here we check several points at once – the ability to see missing information, ask the right questions and work as a team. If one person is unsure of the questions, it can greatly slow down the work of the whole team.

It’s something new! What should I do??

Even a highly trained programmer can still cope with a totally unfamiliar task. A good programmer can find solutions to problems he has never encountered before.

The attitude to an unfamiliar task will reveal the ability to ask the right questions and navigate an uncertain situation. More often than not, if a person during an interview says, “I don’t know, I haven’t come across that,” that’s not the best sign.

It’s much better if they say, “I haven’t been through this, but I guess you have to for such and such a reason.” Especially if their guess is correct, but even if their guess isn’t the best, it can demonstrate “developer courage”, a very valuable quality indeed.

Soft skills

Looking for help or do it yourself? The truth is somewhere in the middle

In terms of communication in a team, there can be two unpleasant extremes that interfere with work. The first extreme is when a person struggles with a problem for weeks without trying to get help from teammates who may have had similar problems before. The second extreme, on the contrary, is if a programmer constantly forces and distracts his colleagues before he thinks of solving the problem on his own or looking for information in open sources. To weed out these candidates, you can directly ask how long someone will do something that isn’t working before asking their teammates for help. Also consider the results of the previous two points. If a candidate has solved a fuzzy problem without specifying the terms, they are likely to struggle for weeks. If a candidate asks a lot of unnecessary questions, it probably means that he most likely belongs to the second group.

1. Soft skills. And your ex?

It is also useful information about how the candidate talks about previous employers. We’re not talking about “never scold the former employer”; almost all suitable candidates know this, and even if they want to smash their “ex” to bits, they will most likely remain silent. If the developers speak honestly, you can understand what they were not happy with in previous work. Based on this, it can be assumed that the candidate will be satisfied with the conditions of your company.

See more: Java or Python: Which Should a Data Scientist Learn?

2. Soft skills. What about tolerance?

Working in a team can be more important than having specific skills. Also, Java teams are usually huge and heterogeneous. In them you can meet people of different ages, nationalities and genders. So if a developer is biased towards one of the categories of people, it can poison teamwork. You have to discover a person’s tolerance with the delicacy of a good psychologist. I sometimes gently provoked the candidate in the following way: I showed him a funny amateur code very easy to optimize and said something like: “Hey, look, it escaped in production. Nothing strange, a young girlelderlydeveloper from India wrote this”. Then I appreciate the reaction. Sometimes I carefully ask leading questions, as if someone has come across such groups of developers. If candidates bring up this topic on purpose, chances are the role models they have in mind will not improve the atmosphere within the team. However, be very careful with this method. If applicants pass the test, be sure to tell them it was just a test.

Candidates are in constant active search: be careful!

My experience also shows that candidates who change positions frequently will want to leave you fairly quickly. Consider this if your project is time-consuming and you want to invest company resources in long-term working relationships with employees. However, if such nomad candidates suit you in other settings, take a closer look. Try to find out what they expect from the job. They can be idealistic and try to find a project that will please them. I had a friend who was constantly changing plans and not doing it because of the money. Everything changed when he joined a team engaged in a complex science-intensive project, which is difficult for most experienced developers but suits him perfectly. He found what he was looking for and immersed himself in the project.

What best practices have you considered when hiring Java developers? Share with us on Facebook, Twitterand LinkedIn.

MORE ABOUT JAVA

Comments are closed.