- Jenkins was initially created by a very small team (Kohsuke Kawaguchi)
- Jenkins plays well with other services like GitHub, SVN, Git using HTTP and REST-like APIs. In fact Jenkins is very popular in non-Java environments.
- The state is managed by each Jenkins instance individually in an own repository (JENKINS_HOME)
- Services are exposed via Remote API
- The UI is self-contained
- Jenkins can be easily extended by an independent team
- Jenkins is already packaged as a micro service: just launch the service with
java -jar jenkins.war
However, I bet Kohsuke didn't knew the term "microservice" as he initially developed Hudson :-).
NEW MUC Airport Workshop: Migrating Java Client (Swing / Java FX) to Web Standards