PHP Backend Developer Job Interview in Germany
Briefly about me: I've been programming since 2003. By education IT specialist and Application Developer. In recent years, the main activity has been the development of online stores ala Hugo Boss and Tommy Hilfiger. Having woken up one morning in the morning, the realization came that it was time in this life to change something.
I want to share my experience in interviewing for the position of PHP Backend Developer in Germany. Interviews, at one time, had to go through a lot. But I want to tell you about the two most memorable, perhaps my experience will be useful to someone in the future.
The main activity is website development.
Number of employees: more than 30.
1. Good PHP knowledge and many years of experience
2. Pragmatic thinking, result orientation
3. SOLID, DRY, YAGNI vs. BUFD
4. Understanding the meaning of TDD and BDD and the ability to apply them
5. Understanding the technologies HTTP, Frameworks, Patterns
6. Ability to explain the adopted technological solutions
7. High level of motivation and desire to work in this particular company
The first step was to send a resume and motivation letter. I won’t go into details, but if anyone is interested, I can write in a separate post about the unwritten rules for writing a resume in Germany.
After 3 days, an answer came with an invitation to come for an interview at the office. They set a date and warned that the whole procedure would take about half a day. At first, the phrase “half a day” confused me, then, being directly in place, everything fell into place. About this in more detail:
It all started with a short interview (30 min.)
Questions that were asked :
How did you find out about our company?
What are your expectations for the upcoming work?
Do you have experience working in companies with a flat hierarchy?
Why do not you want to open your own IT company? (3 years of freelance were indicated in my resume)
What programming languages did you work with and why did you choose PHP?
What do you know about Agile?
What is SOLID and what are the basic principles?
If you came up with your own programming language, what features would you adopt from other languages?
There were still a lot of technical issues, alas, I don’t remember the details. Specific situations were discussed, how would you write code when ... or in case ... Asked to write an algorithm for the task from the fibonacci.
Then a short coffee break and a tour of the office. (20 min.)
Next, they paired up with one of the programmers and gave a task that he and I had to do. (1,5 hour)
Lunch break with the entire development team (1 hour)
Then they asked for feedback, in my opinion, how the interview went, how I liked the company, and if there was a desire to work in it. (10 min.) They said goodbye, promised to contact me within 2 weeks.
A week later, they exactly called me and asked what salary I imagine. After the figure was named, politely thanked and promised to write in the near future.
The next day, a very polite refusal came, where it was said that the decision was made in favor of another candidate.
By the way, often invitations to interviews and answers come in English, and the interview itself is in German.

The main activity is the development of online games.
Number of employees: more than 300.
1. PHP 5.4
2. Experience in game development
3. MySQL is
desirable 4. Knowledge of frameworks ala ZF2
5. Experience in testing
6. Knowledge of REST and RPC
7. Realization that Linux is not an animal
8. Special love with HTML / CSS and JavaScript (jQuery)
9. Understanding the difference between 'agile' and 'chaos'
10. Fluency in English and German
This time they found me, they found me through the German network xing.com. They briefly described the position and requirements and, if interested, asked to send a resume.
Game Development is an interesting thing, so without hesitation, a resume was sent. The only place where doubts remained was knowledge of English. I read and understand everything, but I do not say.
The next day, a call with an invitation to a personal meeting.
The interview was attended by 3 people: the HR worker who found me at Xing, the head of the development department and an ordinary PHP-Developer.
Interview. (30 min.)
Questions that were asked :
Do you have experience in Game Development?
Why do you like Backend rather than Frontend?
Why do you want to leave the company where you worked for 9 years?
How do you feel about extracurricular work?
What do you do in your free time?
In which area do you consider yourself the most successful, and in which area do you have growth potential?
Who do you see yourself in 10 years?
At the end of the interview, the head of the development department said he was interested in working together. He said that in the near future they will send me a test task, which will need to be dealt with within a maximum of 2 hours.
And here is the task itself :
Implement a comment system with PHP and MySQL. Next to the article, the user can write comments, which in the future can also be commented on by himself and other users. Registration and Terms of Use can be ignored. The following items are required:
· A focus on functionality rather than design
· Tables in the database must be clear and simple décor
· Comment shall contain the Name, Email and Text
· Appearance comment at the discretion
· In the case of adding a reference to a comment, it should be working and clickable automatically
· To avoid spam, implement Captcha
· New comments should be automatically published on the site page (and not after updating the page)
· Convenient and clear description of CSS and JavaScript
· In all browsers, the form should look the same
To solve the problem, you could use ready-made frameworks, which reduced the solution to the task itself to 10 minutes.
A week later, they called for a second interview, which was attended only by an HR specialist. Salary and organizational issues were discussed. On all floors of the company I had a tour. Then, after a couple of days, an agreement came in the mail with all the previously agreed points.
1. If you are writing a resume, then enter all the programs and frameworks with which you have at least 30 minutes. in life, but worked.
2. In a motivation letter, try to sell yourself deliciously, while studying the history of the company and learn all about corporate culture. In many companies in Germany you may not be hired because the team did not like you. And no many years of experience and amazing qualifications will save you.
3. Knowledge of English, as practice shows, is not always needed to the extent that is written about in the job description. Most often we are talking about the usual understanding of the language and the ability to read technical things on English sites, blogs, etc. Those. it’s not necessary to be a talker.
4. Know your price, look in advance at the annual level of salaries in your area and ask for 20% more than you would like to receive in the end. In most cases, there will be bargaining.
5. In a personal interview, initiative and sociability are important. Try to immediately suggest a couple of ideas for the development of the company and substantiate these ideas.
6. Ask counter questions and show interest.
7. If you are asked to complete a task, do not be alarmed and use Internet resources freely, as the main thing is to show the result, not truths learned at the university.
8. Be prepared to explain each line of code.
9. Do not be afraid to give feedback about the interview. Just saying that you liked everything is not enough. If you liked it, specify what exactly, if you have questions, ask immediately. If questions appeared after the interview, send them by Email.
10. SOLID principles are asked almost everywhere.
11. In the resume, indicate the nickname on Github.
12. Continuous integration is also often asked.
I want to share my experience in interviewing for the position of PHP Backend Developer in Germany. Interviews, at one time, had to go through a lot. But I want to tell you about the two most memorable, perhaps my experience will be useful to someone in the future.
Company 1.
The main activity is website development.
Number of employees: more than 30.
Job Description:
1. Good PHP knowledge and many years of experience
2. Pragmatic thinking, result orientation
3. SOLID, DRY, YAGNI vs. BUFD
4. Understanding the meaning of TDD and BDD and the ability to apply them
5. Understanding the technologies HTTP, Frameworks, Patterns
6. Ability to explain the adopted technological solutions
7. High level of motivation and desire to work in this particular company
Job interview
The first step was to send a resume and motivation letter. I won’t go into details, but if anyone is interested, I can write in a separate post about the unwritten rules for writing a resume in Germany.
After 3 days, an answer came with an invitation to come for an interview at the office. They set a date and warned that the whole procedure would take about half a day. At first, the phrase “half a day” confused me, then, being directly in place, everything fell into place. About this in more detail:
It all started with a short interview (30 min.)
Questions that were asked :
How did you find out about our company?
What are your expectations for the upcoming work?
Do you have experience working in companies with a flat hierarchy?
Why do not you want to open your own IT company? (3 years of freelance were indicated in my resume)
What programming languages did you work with and why did you choose PHP?
What do you know about Agile?
What is SOLID and what are the basic principles?
If you came up with your own programming language, what features would you adopt from other languages?
There were still a lot of technical issues, alas, I don’t remember the details. Specific situations were discussed, how would you write code when ... or in case ... Asked to write an algorithm for the task from the fibonacci.
Then a short coffee break and a tour of the office. (20 min.)
Next, they paired up with one of the programmers and gave a task that he and I had to do. (1,5 hour)
Lunch break with the entire development team (1 hour)
Then they asked for feedback, in my opinion, how the interview went, how I liked the company, and if there was a desire to work in it. (10 min.) They said goodbye, promised to contact me within 2 weeks.
A week later, they exactly called me and asked what salary I imagine. After the figure was named, politely thanked and promised to write in the near future.
The next day, a very polite refusal came, where it was said that the decision was made in favor of another candidate.
By the way, often invitations to interviews and answers come in English, and the interview itself is in German.

Company 2.
The main activity is the development of online games.
Number of employees: more than 300.
Job Description:
1. PHP 5.4
2. Experience in game development
3. MySQL is
desirable 4. Knowledge of frameworks ala ZF2
5. Experience in testing
6. Knowledge of REST and RPC
7. Realization that Linux is not an animal
8. Special love with HTML / CSS and JavaScript (jQuery)
9. Understanding the difference between 'agile' and 'chaos'
10. Fluency in English and German
Job interview
This time they found me, they found me through the German network xing.com. They briefly described the position and requirements and, if interested, asked to send a resume.
Game Development is an interesting thing, so without hesitation, a resume was sent. The only place where doubts remained was knowledge of English. I read and understand everything, but I do not say.
The next day, a call with an invitation to a personal meeting.
The interview was attended by 3 people: the HR worker who found me at Xing, the head of the development department and an ordinary PHP-Developer.
Interview. (30 min.)
Questions that were asked :
Do you have experience in Game Development?
Why do you like Backend rather than Frontend?
Why do you want to leave the company where you worked for 9 years?
How do you feel about extracurricular work?
What do you do in your free time?
In which area do you consider yourself the most successful, and in which area do you have growth potential?
Who do you see yourself in 10 years?
At the end of the interview, the head of the development department said he was interested in working together. He said that in the near future they will send me a test task, which will need to be dealt with within a maximum of 2 hours.
And here is the task itself :
Implement a comment system with PHP and MySQL. Next to the article, the user can write comments, which in the future can also be commented on by himself and other users. Registration and Terms of Use can be ignored. The following items are required:
· A focus on functionality rather than design
· Tables in the database must be clear and simple décor
· Comment shall contain the Name, Email and Text
· Appearance comment at the discretion
· In the case of adding a reference to a comment, it should be working and clickable automatically
· To avoid spam, implement Captcha
· New comments should be automatically published on the site page (and not after updating the page)
· Convenient and clear description of CSS and JavaScript
· In all browsers, the form should look the same
To solve the problem, you could use ready-made frameworks, which reduced the solution to the task itself to 10 minutes.
A week later, they called for a second interview, which was attended only by an HR specialist. Salary and organizational issues were discussed. On all floors of the company I had a tour. Then, after a couple of days, an agreement came in the mail with all the previously agreed points.
My findings
1. If you are writing a resume, then enter all the programs and frameworks with which you have at least 30 minutes. in life, but worked.
2. In a motivation letter, try to sell yourself deliciously, while studying the history of the company and learn all about corporate culture. In many companies in Germany you may not be hired because the team did not like you. And no many years of experience and amazing qualifications will save you.
3. Knowledge of English, as practice shows, is not always needed to the extent that is written about in the job description. Most often we are talking about the usual understanding of the language and the ability to read technical things on English sites, blogs, etc. Those. it’s not necessary to be a talker.
4. Know your price, look in advance at the annual level of salaries in your area and ask for 20% more than you would like to receive in the end. In most cases, there will be bargaining.
5. In a personal interview, initiative and sociability are important. Try to immediately suggest a couple of ideas for the development of the company and substantiate these ideas.
6. Ask counter questions and show interest.
7. If you are asked to complete a task, do not be alarmed and use Internet resources freely, as the main thing is to show the result, not truths learned at the university.
8. Be prepared to explain each line of code.
9. Do not be afraid to give feedback about the interview. Just saying that you liked everything is not enough. If you liked it, specify what exactly, if you have questions, ask immediately. If questions appeared after the interview, send them by Email.
10. SOLID principles are asked almost everywhere.
11. In the resume, indicate the nickname on Github.
12. Continuous integration is also often asked.