I see a pattern — a new technology is getting adopted and quizzed in-depth at interviews. After 5 years, it is still a favorite, perhaps dominant solution, but 1) the know-how has become common knowledge and candidates are assumed to know it and 2) usage is now standardized and simplified, so the “bar” is lower, and candidates without the knowledge can easily pick it up.
No more in-depth questions needed. Therefore, time previously invested here is wasted, since only superficial knowledge is required now.
- Eg: spring/hibernate
- Eg: java servlets and JSP — From 1999 to 2008 these topics were heavily quizzed. Still widely in use but often invisible.
- Eg: Apache web server — In 2000 I was asked a lot on Apache details. Apache is still very popular. See https://w3techs.com/technologies/overview/web_server/all
- Eg: php — still widely used, but I feel not asked a lot. See https://w3techs.com/technologies/history_overview/programming_language/ms/y
- Eg: xml parsing — I used to get in-depth questions about DOM or SAX etc. Now I believe xml is still widely used
- Eg: web services, SOA, SOAP — Still very much in use
- Eg: HTTP protocol details like GET/POST, status codes
- Eg: Maven and Ant
The opposite list — some essential technologies underlying multiple technology waves were never heavily quizzed, but, after the waves subsided, remain rather relevant to many niche interviews.
- SQL query — joins, subquery, case, ..
- SQL and DB tuning
- Unix automation — It can take years to become reasonably competent with all of bash, piping, subshells, trap, shell functions, string operators, file manipulation, and top 30 Unix commands
- Unix system administration
- Pthreads, a POSIX standard C library
- http client programming
- regular expression
- Java servlet session management
- Java serialization
- Java reflection
— You write —
There are still many projects using Spring. My current project is also using Spring, but it’s modified by internal team to create an internal framework. When people discuss in meeting, they say “Spring” to refer to this framework. But there are many pitfalls when I use it. To name a few:
- a) restful service is easy to implement in spring, ust add related annotations, but it doesn’t work, and after I spent a few days of research, I gave up and choose to use a internally created annotation.
- b) some configurations doesn’t work, parameters couldn’t be passed in. I still don’t know what’s the reason. The internal framework code is not accessible for other teams developers, so I don’t think it worth to spent more time to try to figure out.
For this project using Spring, the interview only mentioned this project is using Spring, but didn’t ask any questions about Spring.
For last year, I went through 5 interviews, 2 mentioned the projects are using Spring, and only one client asked some Spring questions.
I recall 5 years ago, 8/10 will ask spring and hibernate questions. Now, still a few clients asked Spring questions, but none asked Hibernate questions.