Quality of your software is my top priority. My adventure with programming started nearly 8 years ago. I’ve been doing professional software development for over 6 years now. During these years I’ve been involved in multiple projects, created in different technologies: Java, .NET, Python, Javascript, Android, low level WinApi, CUDA. I’ve been working also as a Unix systems administrator for a while. Currently I’m doing mostly Java & Spring Framework backend development, which is my preferred stack. I’m also proficient in building frontend AngularJS single page applications (often paired with REST APIs created using Spring). I strongly believe in classic Test-driven development approach. I’m a Domain-driven design practitioner. This methodology proved to be an excellent tool for sophisticated projects, which I enjoy the most. My code is clean and easy to modify, thanks to the modular, loosely coupled design achieved by continuous TDD iterations backed by deep understanding of business requirements.
I’m confident with following technologies, methodologies and tools: Java 8, Spring Framework, JUnit, Mockito, Maven, Git, Domain-driven design, Test-driven development, Object-oriented programming, Design patterns, Multilayered Architecture, REST architecture, MongoDB, JPA, Javascript, AngularJS, Jasmine, Karma, npm, Bower. I’m very excited about learning new things, so I’m happy to jump into new technology whenever I can.
Since 2012 I’ve been working as a freelancer (later as part of my own software house), creating software for my customers (university, construction companies, individual clients). Most of these systems were build from scratch to meet specific client requirements. Here are some examples of projects I’ve done for my clients:
Below is a list of my personal projects:
I’m especially interested in taking part in complex, unusual projects built from scratch. I can also help to design a new system or completely rebuilt a legacy one. My preferred technology stack includes Java or Spring Framework. However, I’m also open to any other technologies. I would be happy to work with creative and open people, which appreciate and produce great code.