If you are on the java platform I have an unpopular recommendation: get familiar with OSGi. Its specs, its history and its core concepts. The learning path you go will teach you a lot about how to build systems, how to think about api design, modularisation and standards (compared to one-off company owned tech). Its almost certainly makes you a better developer/thinker.
The true question is: are the values that OSGi stands for (still) reasonable?
The values are: modularity as core concept at build and runtime, low footprint adaptive services and vendor-agnostic specification.
Now, OSGi may have a poor image in the current Microservices/cloud vendor driven bubble. But let’s step a bit back and ask:
1. isn’t constructing software from building-blocks useful? What’s up with reuse, synergy, not throw away software?
2. Wouldn’t services be useful that don’t just die but reconfigure (adapt) when upstream dependencies change/go away?
3. Is time to market really the best incentive these days? What’s up with making sure software is constructed with security and privacy in mind? What about assuming your startup isn’t sold (sell and forget) but you need to evolve it?
So, incidentally those qualities are part of the OSGi values made up about 20 years ago. If not OSGi (a messenger of values), wouldn’t the values make more sense now more than ever?
rebaze - http://rebaze.com | "Developer Advocate as a Service" - Type of Engineer | Hannover, Germany | REMOTE + ONSITE in Germany | Fulltime
Hey there,
We develop tools, principles and products for enterprise engineering teams so they can have startup-like fun, too.
We create rockstar tools, coach teams on new techs and reimagine existing software products.
We are "Developer Advocates as a Service" for our clients.
You are a software remodelling enthusiast! You love to refactor dusty codebases, simplify processes and removing obsolete stuff all DAY.
You need to live in Germany or at least be able to travel to Germany 3 days/week.
You should have a deep background in at least 2 of the following technical areas:
- OSGi
- Gradle
- Machine Learning
- Jetbrains MPS
- Eclipse Platform (Plugins)
- Devops Expert: Docker, Git, Jenkins Pipelines
You should have fun working remotely (anywhere in the world) but willing to travel to clients (usually Germany) on a weekly basis.
Our interview process begins with a video-call, followed by a coffee or beer either in Hannover, Frankfurt or Cologne.