3 ms·
I think is some amount of specialization (which makes you generally good in your chosen area of expertise) balanced with some amount of broad experience, which
by lmilcin 9y ago
I think is some amount of specialization (which makes you generally good in your chosen area of expertise) balanced with some amount of broad experience, which puts the "icing on the cake" and lets you discover connections that other people in your organization could not.
I am mostly working as a Java developer for large and very large corporate backends. I also have following experiences:
- sysadmin for critical applications,
- embedded development for payment terminals with severely restricted resources but lots of requirements
- algorithmic trading (guaranteed single-digit microseconds request->response)
- infrastructure automation (Infrastructure as Code, etc.)
- Linux kernel and general Linux platform development
- high level (automated reasoning, optimizations)
- embedded with control theory
- cryptographic protocol design
All this I think makes me much better Java backend developer that I could ever be if I just spent all that time on Java backends alone.
I frequently make various connections, am able to build much more efficient and reliable applications that I could without that added experience. I have much more balanced (you could say, mature) response to new technology, language features, frameworks, etc. -- in no small part thanks to Common Lisp, at the cost of no longer being content with Java. Or C++. Or any other fancy language that is not Lisp.