Focusing on Python programming, it is ironic that at the moment the lack of Python programmers is one of the reasons why some small companies are hindering the growth. Companies that might be looking to have a development team to match their demand end up tailoring their business to one or two important customers, leaving product improvement in the hands of the free software community, which finds it interesting.
Therefore, when entrepreneurs try to find new developers, they face a number of problems. In order to avoid it, you can ask for help from specialists https://uvik.net/technologies/hire-python-developers/.
It is not enough to know the syntax of the language. We are looking for a specific profile of a programmer who is able to come up with creative and original solutions and able to express them as Python code for the rest of the development team.
Therefore, today we will figure out what a Python programmer should be able to do and what to look for when recruiting.
1. Filtering a simple
Before wasting time, the first step is to ask the candidate if they really know Python. There are quite a few who come up with the idea that it doesn’t matter if it’s python or any other “popular” language like java or Visual Basic. No matter how much they insist that he must be an experienced Python programmer, many times you will find that he does not know Python and has no experience.
Test “Hello world!” in python, this should be the first test to exclude people who don’t speak the language.
2. Ask for samples of their work
Any self-respecting programmer should have a collection of things they have worked on. They don’t have to be amazing things. It could just be those knowledge tokens left on the web to help others, maybe a Stack Overflow profile or Python Majibu where you can see what kind of communicator you are and solve problems. Maybe some open source repository he contributes to, professional blog, twitter.
A simple look at what people are doing helps a lot to understand what a programmer excels at and what he doesn’t.
3. Attitude to corporate culture
Experience says that belonging to a corporate culture provides more success than programming. Free software companies are a typical example where they tend to enforce certain ethical standards among their employees, such as sharing all knowledge.
When it comes to python, the programmer of this language has a very distinctive profile. He strives for simplicity and elegance of the code, not for its optimization and efficiency. Try to be platform agnostic so that the code works on (almost) any site. However, he is eager to learn about new libraries that he can use in his developments, always with Python as the application logic control language.
All of this activity is reflected in the Python “communities” where these topics are proposed and discussed.
But a decent company that can offer a good open source product should be able to form its own community as a meeting place for those involved with the project, not just programmers. This community serves both to spread the company’s philosophy and to meet related personnel. Unfortunately, many companies believed that community was built through ad bombardment, and that is how they created their social media accounts like Facebook or Twitter. In this way, they have acquired fanatical consumers, but very few collaborators.
The programmer must get the code. Developer communities form around services such as github, bitbucket, sourceforge, launchpad, trac, etc. If you find a programmer in your community who has made a great contribution to you, or a hacker who has found a strange and hidden vulnerability, hire him, without hesitation.
4. Programming test
The next thing to do is to ask them to implement some simple programs: create a regular expression to search for phone numbers in text, convert a list of tuples into a dictionary, and so on.
A programming test does not have to look for the perfect answer, but to create a context in which the programmer can be observed in his understanding of problems, as well as in how he tries to solve them. If possible, this is a test that could well be done online, with a combination of videoconferencing and whiteboarding. If too many alarms are triggered online, the test can be aborted at any time and thus save time for both candidate and employer.
Thanks to these four simple things, you will be able to find the perfect developer for your team.