Mobile Developers: 5 things you must know to land a job in Europe
By Ahmed Elshahawi & Mohamed Abd El-Sattar.
Hi everyone,
Greetings from Berlin!
If you are actively using your Linkedin account, it’s likely that recruiters have been reaching out to you much more often since last fall. The industry post-pandemic recovered faster than expected resulting in an increased job offer, whereas candidates seem to be more cautious when it comes to changing jobs. Glassdoor reports that “there are only 0.74 unemployed Americans for each job opening, as of September 2021.” (Daniel Zhao, 20211). This trend should continue in 2022 which doesn’t mean that employers are less demanding.
Nevertheless, as a candidate, you still need to clearly showcase your skills and motivation throughout the whole hiring process which usually means 2 to 4 interviews plus a take-home technical assessment and/or live coding challenges. For those looking for job opportunities outside their local job market, the mission is a bit more challenging but not impossible whatsoever. What you guys need to do in addition is to understand the differences in terms of required skills and types of assessment, and fill the skills gap where needed.
>>> This article gives you a hand.
Ahmed Elshahawi (eBay) and Mohamed Sattar (JUCR), both Android Engineers working in Berlin and Technical Coaches at Imagine Foundation, joined me to discuss what candidates should do to grab one of the thousands of jobs available in the European market as a Mobile Engineer. Check it out!
#1 Understand the local job market
Checking the most popular job boards in your target location can give you valuable insights. Want to see one example? Here we go. By comparing the number of vacant jobs in Germany for React Native Developers, iOS, Flutter and Android Developers you can have a statistical overview of which type is in higher demand in that given market. Afterward, you can decide if that location is the best for you or if you should target a different city or country — where your intended role (tech stack) is more popular. If you are certain about the location where you want to land your next job, then realizing how popular (or unpopular) your intended role is in that job market may lead you to focus on a different role — one for which you find more opportunities available.
Having defined your target role and location, it’s time to dive deeper into the job descriptions. Reading job descriptions gives you a clear picture of the skills and experiences required by the companies in your target market. After that, you can either choose the jobs that best match your profile and, without wasting time, apply for them or work on yourself to fill the skills gap.
#2 Master these skills
Mohamed and Ahmed pointed out which skills they perceive as essential if you look for an Android Engineer job in Europe.
Kotlin,
Architectures such as MVVM, MVP or MVC,
Dependency Injection,
Reactive Programming tools: e.g. Rx Java,
Testing (unit, integration and/or UI testing).
You should definitely write tests when presenting technical solutions during the interview process. If you have been doing that in previous jobs, awesome! You are used to it and will not have problems showing it. By the way, have you mentioned it in your CV? I hope you have! On the other hand, if you didn’t have the opportunity to work with testing for your employer or clients, then do this for your side projects and share those in your Github account.
Besides those 5 skills, Ahmed remembers that “If you have previous experiences in the same field of the job you applied for, that gives your application an extra score”. It will be easier for you to understand the business, the product and the users’ needs when you are hired. This is why it’s important to mention in your CV the domain of the apps you have been working on or the industries you have experience in.
#3 Show how you manage your work — a special topic for freelancers
Agile methodology has been widely used by tech teams worldwide as a tool that facilitates project management and collaboration between cross-functional teams. Even though it has clear steps and principles, you can expect to find a different usage of the Agile methodology depending on the company and the team you will be working in. Let’s say that you have been in a solo career and working mainly as an independent freelancer without being formally part of a team. To show that you can easily fit an Agile culture make clear to your interviewer that
1. You know how to manage yourself towards matching the project requirements and deadlines.
2. You can efficiently collaborate with your team members as well as external stakeholders.
#4 Do your homework before tech interviews or coding challenges
Practice makes perfect. Here are some platforms recommended by Ahmed and Mohammed to practice coding challenges.
You can start from writing basic algorithms and gradually increase the level of difficulty. Remember to write tests as well!
Background information is also your ally as it helps you to predict what the interview looks like. On platforms like Glassdoor and Quora candidates share the questions asked during interviews in a wide range of companies. Alternatively, you can simply google something like “tech interview at (company’s name)”. As a result, you should be able to find commonly asked questions and eventually tips for the interviews in your potentially future employer.
Another way to predict what the interview is about and what is expected from you is by asking your interviewer. For example, you can ask if they go for computer programming or Android native. For live coding challenges, don’t be shy of asking questions until you have fully understood the problem given to you, this is essential for you to think and design the best solution.
In addition to all we said here, the interview experience itself helps you to get familiar with having someone looking over your shoulders while you code, for example. Over time, you might perceive similar questions or problems posed by different companies which allows you to work on your answers beforehand. If time management is an issue, taking interviews will demand you to work on that and consequently find the time management strategy that works best for you. Don’t worry if you fail in the first (even the second, third, forth) interviews. It’s all a learning process and you are already really brave just for accepting the challenge. Enjoy the journey instead of blaming yourself for the results.
Talking about time, we must say: don’t overcomplicate your solution. It’s better the unperfect done than the perfect undone. Focus on coding a solution that works at the end, includes a test, is easily readable and organized enough to be understood by any other developers. Other ideas you can explain to your interviewer afterward, by starting with something like “if I had more time to work on my solution, I would build a…”.
#5 Take a step further (most candidates won’t)
Prior to your interview, research the company. Try to grasp what the company does (business, product, industry), which type of client they serve (B2B, B2C). This way your interviewer will see that you are familiar with the company and ready to join the team.
We hope you enjoyed the reading and it can help you land an international job in 2022.
All the best my friends.
*Especial thanks to the co-authors Mohamed Abd El-Sattar & Mohamed Abd El-Sattar. Follow them for more insights.