Every week here and in our newsletter, we feature a new developer/blogger from the DZone community to catch up and find out what he or she is working on now and what's coming next. This week we're talking to Jakub Kubrynski, software developer, co-founder of Codearte.io, and frequent contributor to our Enterprise Integration, Java, and Performance Zones. Some of his most recent posts on DZone include:
- Dependency Injection Pitfalls in Spring
- Need Micro Caching? Memoization to the Rescue
- Including Java Agent in Standalone Spring Boot Application
1. What have you been working on lately?
A few months ago I’ve entirely devoted to Codearte.io - a company that I’ve co-founded. We’re developing our own product - online recruitment platform called DevSKiller (http://devskiller.com) for verifying technical skills of software engineers. Unlike existing solutions DevSKiller allows you to test candidates in the context of technologies, libraries, frameworks and tools used in employers’ ecosystems. The tool puts one against some uncommon problems, which is really cool as it forces us to continuously learn new things!
We also continue to grow our outsourcing services. We’ve been recenty trusted by another client from finance industry (4Finance group, http://www.4financeit.com/). They adapt their existing architecture to microservices paradigm and that initiative also benefited us as a vendor by enriching our experience and improving our methodologies and tools.
2. You seem to focus most on Spring integration. What are some of the most enjoyable and least enjoyable things about coding for Spring? Where do you see Spring development going in 2015?
Spring has been traditionally setting trends and showing us that it’s possible to do something easier and faster than we used to. There is a direct competition between Spring and Java EE and recently, when the differences between the two were blurred more than ever, Pivotal launched their Spring Boot which again revolutionized our approach to software development.
Currently there is big hype for microservices architecture which encourages polyglot, dynamic, cloud infrastructure. Due to that trend I see Spring Boot and Spring Cloud as the most important products from Pivotal. There is also a growing number of powerful third-party libraries like micro-infra-spring, Eureka or Hystrix just to name a few.
3. Are there any particular developer tools or resources you couldn't live without?
I use a lot of tools on daily basis. Tools allow me to work more effectively and focus on the problem I’m currently solving instead of some basic actions required to take place to ship the solution. I can’t imagine writing code without IntelliJ IDEA as well as working on operating system other than Linux. To manage my code I use GIT with FISH shell. I use Maven to work with dependencies and build process - sadly it clings to XML, but still is more reliable than Gradle. Recently I started using Docker, which allows me to easily play with new technologies - installing any database is pretty easy when you just have to type “docker run” :)
4. Do you have a favorite open source project (or projects) that you've contributed to recently?
Recently I’ve started a few small, but in my opinion useful library projects, missing from Java ecosystem. Duramen, a lightweight, persistent Java event bus allowing safe event-based processing came first. Then we released Resteeth which is a declarative Spring MVC based REST client.
I’m also trying to find some time to participate in Spring Boot development - being part of its community is really edifying.
5. Do you follow any blogs or Twitter feeds that you would recommend to developers?
Of course! There is too much cool things to explore to be able to do it on your own. I always read Tomek Nurkiewicz (nurkiewicz.com) and Nitsan Wakart (psy-lob-saw.blogspot.com) blogs. In addition I use pre-filtered content at java.dzone.com - that allows me to reach posts I wouldn’t probably find in the course of Internet browsing.
6. Did you have a coding first love -- a particular program, gadget, game, or language that set you on the path to life as a developer?
I developed my very first program when I was 8. With my father’s priceless mentoring I’ve managed to solve my math homework using Fortran 77 instead of pen and paper :) It was love from the first sight! Later this fascination deepened and finally turned into a way of life. Unfortunately despite the efforts, I did not go in the footsteps of my father - I definitely prefer technology puzzles over complex algorithms behind mechanics of fluids ;)
7. Is there anything else you'd like to mention?
Do not lose your passion! Without passion we are just developers - and we definitely should be the developers!