Last Update: 08.05.2018. By Jens in Developers Life | Learning | Newsletter
I got that questions a couple of times, so I thought I’d answer it here.
As always, it depends. It varies on the company and type of systems I’d hire for. Generally, I am looking more for skills outside of coding like your level of abstraction, can you discuss abstract topics, how you can handle complexity; are you already lost when the system has 3 apps talking to each other over various channels or do you keep the overview and can predict possible side effects. Also, how you learn is a thing and how fast. If you’d much handholding or deal on your own. Of course, it depends also on the position. I’d expect more from a senior dev than from a junior. Not only in regards to coding knowledge.
For the hard skills. If it’s a Java position, you should be able to code in Java and have a few years working experience. You should also enjoy Java and not complain all the times about it how inferior it is to whatever your thing is.
For Spring. I’d expect from you that you can explain to me what problem Spring actually solves and in an abstract way how the core works. A bonus is when you can explain how the magic of Spring Boot works. As the power of Spring lies in the various modules, you should have, at least basic working skill, with Spring Data JPA, MVC, and Security. The most common stack. You should also be able to write tests using the default Spring test stack.
I don’t care if you know every nut and bolt. If you understand the core concept and can work productively (standard sets) with the others you are good. Anything beyond that is a bonus.
Heck, if you are above the team average on the soft skills I mentioned before, there is a chance I’d even hire you without any Spring knowledge. You could learn that on the job.