Sonatype Senior Engineer Interview Questions | Glassdoor

Sonatype Senior Engineer Interview Questions

Interviews at Sonatype

1 Interview Review



Getting an Interview

Getting an Interview





Helpful (15)  

Senior Engineer Interview

Anonymous Interview Candidate
No Offer
Neutral Experience
Difficult Interview


I applied online. The process took 6 weeks. I interviewed at Sonatype in September 2016.


mixed experience:

1)Very good HR! Will help you to make things work.

2)Interviewers are smart, some of them are super engineers (participated in JVM implementation, contributed to open source frameworks, etc). If you have done your homework and checked the company and the interviewers' blog, you will enjoy the process of preparation and might even learn some interesting information.

You will have to prepare really well (read at least Java concurrency in action, a lot of de facto interview questions in Java, spring and Databases).

3)Interesting product, used by millions of developers worldwide.

1)Very time and energy consuming process (6 interviews over 5 weeks). Do it only when you don't work long hours and not engaged with other potential employers.

2)You are the one who is supposed to make things happen.It's a 100% distributed environment. HR will give you contacts of the interviewers. And as usual, some people are more responsive than others. And then you will have to send reminders and get back to HR to ask them to ping the interviewers.

3)Individual Interviewers are 100% able to decide the interview style. Some of them are more objective/quantitative than others. I had at least one interview that was just chat about general Java and I had the impression that the decision will be based on the interviewer's gut feeling more than anything else.

4)The metrics to grade the technical "challenge" was not well communicated to me. According to previous experiences with other multi national tier A companies, the exam is supposed to test your coding and design abilities and ignore minor typos. However, it turned out that Sonatype would rather have a solution in POJO with the right indentation and with no spelling mistakes than a well designed solution.

So for me it was a 5 week process. It started with initial contact with HR ,and then an HR screening. Next week i had an initial 1 hour phone screening with a senior engineer. It was basic Java and database questions. After a few days I was told they want to proceed.

Over 3rd,4th and 5th weeks I had to arrange my interviews myself with another 4 resources. 3 of the 4 interviews were purely technical(Check next section for details). The 4th one was with an agile coach, so it was about the difference between Kanban and Agile,working remotely, etc.

The interviews were not easy, I was informed by HR that the feedback " was very positive.", however, they want me to take a code challenge before giving an offer!

It was a simple problem related to data conversion. I saw a similar problem a few months ago in "cracking the code interview" so it took me only a few hours to solve it.

Then I decided to make things look "nicer" and to show my design abilities. I changed the scope to add the notion of "conversion by language", added a caching layer to save the string literals, a base Converter class that my class extends,a factory class. I also added test classes that cover almost every case and also test data validation in case of wrong data. Finally i created a .sh file and a deployment descriptor in a pom file and a readme. I did this over the course of the weekend because I needed to get an final answer within the week since other companies had already started to give me concrete offers and I had to reply.

The solution was correct, sound and concrete, in the right time and space complexity using the least number of variables (with minimal String pool exhaustion). An extra effort had been made to make the program more like a library that is open for new features.

Again I had to follow up to get the reviews done. I finally was informed that the interviewer was busy with a client and was now able to review my code. A few hours later I got a call from HR informing me that they rejected my candidacy because the solution was over designed and they were some issues like occasional spelling mistakes and variable, method or package accidentally not following lowerCamelCase and extra white spaces.

Advice: They hand pick their engineers. So expect a long tiring interview process that lasts for at least a month and that might not end up well because of the smallest missing detail, so take your time and be a perfectionist without over engineering!!!

Advice to management:
1) Define your expectations during the technical challenge, and make sure they are clearly communicated to the candidate.

2) 90%+ of software engineers around the world are not open source contributors. If you have a doubt about a candidate that you didn't see enough of his code, ask him to start with the code challenge before the interviews. This will save at least 10 man hours in your time sheets.

Interview Questions

  • design patterns, to multi threading. Problem solving, high transaction volume database, IOC frameworks(and differences between them), dead locks, databases, Nosql and sql, atomic transactions, performance, availability, some questions about my past experiences and the solutions I designed. They also discussed a bit of my experience with working remotely.The 4th one was with an agile coach, so it was about the difference between Kanban and Agile,working remotely, etc.   Answer Question
Don't Miss Out On a Job You Love
Upload a resume to easily apply to jobs from anywhere. It's simple to set up.