Enthusiastic and well-organised Java Web Developer with 10+ years of experience. I have strong problem-solving skills with great attention to detail and mainly focusing on highly-available, high-performance and secure systems.
Skills
Frontend
Comprehensive Angular skills and good understanding of core web design principles. HTML, CSS, native JavaScript as well as popular libraries like JQuery and Bootstrap.
Backend
Strong experience implementing RESTful and SOAP-based APIs. Working with different architecture stacks including containerized, self-contained and vendor-dependent APIs.
Database
Writing SQL queries, stored procedures and functions. JPA and Spring Data experience.
Testing
Unit testing of Java methods. Integration testing with mocks and stubs. BDD testing using Cucumber tool. Experience testing Angular applications with Jasmine Karma and Protractor frameworks.
Security
Extensive Spring Security experience including cookie-based and token-based OAuth 2.0 / OpenID authorisation and authentication protocols. Good understanding of different OAuth 2.0 authorisation flows and filter chains.
Linux
Using as my home operating system. Experience in shell scripting, basic administration, networking and security.
Tools
Git, Maven, Jenkins, Docker, Docker Compose, Open Shift, SVN, Jira, IntelliJ IDEA.
Personal Projects
Authorizatorius
https://authorizatorius.dkiriusin.com/
Application written in order to improve my OAuth 2.0 / OpenID protocol skills and allows accessing remote protected resource using different token providers.
Application consists of four Docker containers:
- nginx — running as reverse proxy with SSL support
- oauth2-ui — Angular Material frontend
- oauth2-client — Spring Security based OAuth 2.0 client
- oauth2-protected-resource — Spring Security based OAuth 2.0 protected resource server
Combinatorius
http://combinatorius.dkiriusin.com/
Application written in order to demonstrate my HTTP protocol skills. It combines multiple CSS and JavaScript files into a single bundle for faster response and applies smart headers for caching and versioning.
Technological stack:
- JSP / Servlets
- HTML, CSS, JavaScript
- Nginx / Apache Tomcat
- Maven / Docker