Java JVM JEE Agile
Know me betterHi,
Welcome to my official page.
I am a reliable, enthusiastic and committed experienced Java Architect and Technical Leader. I have 21 years of hands-on experience in Java and JVM technologies across different databases and servers. I have 17 years’ experience in Spring Framework. Over the past 12 years I have been creating solutions in the integration layer based on the microservices architecture exposed by REST and GrahpQL API protected by OAuth2 and OpenID-Connect and integrate them with various clients, ranging from native applications to SPA applications based on Angular and EmberJS.
I am passionate about agile methodologies and programming as an art. I have proven ability to lead a scrum team and deliver fully tested software using Continues Delivery tools and practices within the agreed deadline.
Having leadership, negotiation and communication skills I’m capable of providing guidance and advice to junior and senior team members. I’m always business focused using optimal tools as I keep up to date with Java and JVM related technologies.
In total I have 23 years of commercial experience in IT programing and testing in several programming languages, environments and products. I am an IBM Certified Solution Designer, an IBM Certified Advanced Application Developer, Cisco Certified Network Associate (CCNA) and Certified ScrumMaster®.
I hold Master’s Degree in Computer Science from the University of Science and Technology in Krakow Poland and my thesis title is ‘Security in the UNIX systems’
My priority is to create valuable, high quality software in a predictable and repeatable way.
I love tough challenges and hard work. If you have any challenges to overcome in JAVA related technologies let me know and put me to the test.
I have an enthusiastic attitude to new ideas and initiatives. If you have an idea but you lack someone to implement it in JAVA related technologies invite me to cooperate.
Master programmers think of systems as stories to be told rather than programs to be written.
Acceptance Criteria · Short Iterations · Honest Feedback · Continuous Delivery
Most of my time I spend on software development. I develop software in very small increments (the best is one week). Each iteration has defined functionalities in the form of automated acceptance scenarios. The implementation of scenarios is driven by GUI, unit and integration tests. The correctness of the implementation of the scenarios is verified by Continuous Integration system. Mastering writing good automated tests is a key to keep an application in production-ready quality to successfully apply Continuous Delivery.
Even agile teams need architecture. I have extensive experience in prototyping and architecting solutions showing any pros and cons of proposed solutions, which take into account your requirements and fits your environment. I have design experience in big systems handling very high load and with big performance / scalability / availability requirements. I am an expert in tuning and tweaking the JVM to achieve the best performance results.
An important key in successful project development is developing each team member's knowledge and skills. Everyday work does not always give opportunities to grow, learn new things and gain new skills. That is why some team members need dedicated training when they have time not only to get to know the theory but mainly to learn via practical exercises, workshops and labs. I have proven experience in conducting successful trainings starting from Java programming, through TDD to Agile practices.
Outsourcing software can significantly reduce the cost of its development. However, software created in this way can be very expensive in maintenance or further development if the quality is poor. I have proven experience in assessing the quality and maintainability of the architectures and applications built for you. Prepared report will verify the correctness of architecture for performance, scalability, extensibility, reliability, portability and security. Prepared report will include suggestions on how to resolve the issues found.
Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.
YEARS
Innovation distinguishes between leaders and followers.
If you are interested in cooperation, please contact me on