Martin Sykora

Hi, I am Martin Sykora, a software engineer based in Plzen, Czechia, currently working on some pretty cool projects as a freelancer. Let’s build something amazing together.

Plzen, Czechia

Experience

Software engineer @ Inventi

10/2023 - Present

Projects

Erwin Hymer Group

  • Led an initiative and full-scale refactoring of a legacy enterprise service into a modular solution using Clean Architecture principles.
  • Designed and implemented robust RESTful APIs to serve both frontend applications and other backend services.
  • Introduced a streamlined developer onboarding process by documenting critical workflows, creating docker-compose setups for all dependent services (PostgreSQL, Keycloak, ...), and using TestContainers to eliminate local setup requirements for testing and development.
  • Integrated automated testing into GitLab CI/CD pipelines and advocated for containerized environments, successfully driving customer adoption of Docker across the development workflow.

Used technologies:

Java / Spring Boot 3 / Swagger / OpenAPI / PostgreSQL / Flyway / MapStruct / git / JIRA / Sonar / jUnit / Mockito / Testcontainers / etc.

GK Software

Developed and maintained microservices for retail clients such as Aldi and Lidl, enhancing payment and self-scanning systems.

  • Microservices Development: Contributed to the development and maintenance of a suite of microservices tailored for retail operations, ensuring desired functionality and reliability.
  • POC for VR-pay Integration: Participated in a proof of concept (POC) project allowing tablet-based store purchases. Implemented communication protocols, developed business logic, and performed comprehensive unit and end-to-end testing.
  • Spring Boot Standardization: Upgraded a microservice used for self-scanning stores to adhere to Spring Boot standards, addressing and correcting numerous violations to improve maintainability and compliance.

Used technologies:

Java / Spring Boot 2 / OpenAPI / git / JIRA / Sonar / jUnit / Mockito / WireMock / Testcontainers / etc.

Software engineer @ S9Y.ai

11/2018 - 09/2023

Projects

Rohlik Group

05/2019 - 09/2023

As a member of the Checkout team in this highly dynamic company I:

  • Developed and maintained Java-based microservices using Spring Boot 2, Swagger, Flyway, QueryDSL, Redis, and RabbitMQ, resulting in an efficient and scalable system.
  • Created and consumed REST APIs of third parties, ensuring seamless integration between systems.
  • Led the development and maintenance of a microservice responsible for integrating third-party services into the company's system, significantly reducing integration time and expanded product offerings for customers.
  • Contributed to multiple other microservices, implementing new features, fixing bugs, and improving system performance.
  • Contributed to the team's technical and process improvements, including using Git for version control, JIRA for project management, Sonar for code quality monitoring, and unit and integration testing with JUnit, Mockito, WireMock and Testcontainers.
  • Worked in an Agile environment, participating in daily stand-ups, retrospectives, refinements, and quarterly planning sessions, demonstrating strong collaboration and communication skills.
  • Maintained a deep understanding of the business goals and objectives of the company and leveraged this knowledge to guide development efforts and ensure alignment with company strategy.

Used technologies:

Java / Spring Boot 2 / Swagger / Flyway / QueryDSL / Redis / RabbitMQ / ArgoCD / GCP / k9s / git / JIRA / Sonar / jUnit / Mockito / WireMock / Testcontainers / etc.

WPA

11/2018 - 04/2019

Created an application that helps with the production planning of thousands of parts per month. Interfacing with the customer's internal IS using Kooby (Kotlin module for Jooby) and Swagger.

Used technologies:

Kotlin / OptaPlanner / git

Software engineer @ Diebold Nixdorf

03/2015 - 03/2019

As a Software Engineer at Diebold Nixdorf's Global Delivery Center, I specialized in developing ATM applications for multiple global banks using the proprietary ProFlex framework. I extended and modified the framework with Java modules (called Steps) to improve its functionality. My primary responsibilities included designing, developing, testing, and maintaining these applications to ensure their reliability and efficiency for use in ATMs. Additionally, I maintained daily communication with end customers to ensure that the applications met their needs.

Used technologies:

Java, Tooling, JavaScript, CSS, HTML, git, Jira, Gradle, Jenkins, Sonar

Projects

PNC Bank (US) / HSBC (HK) / Ziraat Bankası (TR) / OCBC Bank (SG) / US BANK (US)

Developed and deployed ATM software solutions for international banks, customizing applications to meet region-specific requirements and compliance standards. Led end-to-end implementation, from initial proof-of-concept (PoC) to final deployment. Secured new business opportunities by delivering successful PoCs to potential banking clients. Mentored junior developers, improving team productivity and ensuring adherence to best coding practices.

Graphic designer & Frontend developer @ DMCompany a.s.

07/2011 - 01/2014

Creation of graphic designs for the web, printed adverts, posters, etc. Integration of 3rd party systems. Frontend development of the company’s website. Communicating with clients and suppliers.

Education

Master’s degree in Software Engineering
@ University of West Bohemia

finished 2017

Master’s thesis

The system for control and management of in-house education

The primary objective of this work was to build the foundation for a modern system for employee training. Media streaming and connectivity to various calendar services were among the key requests of the customer. During work on this thesis, I deepened my knowledge of Java Enterprise Edition and learned new design patterns (e.g. plugin pattern). I also learned the practical usage of dependency injection and media streaming.

Bachelor’s degree in Computer Science
@ University of West Bohemia

finished 2010

Bachelor’s thesis

ERP experiment - Influence of alcohol on driver's attention and his/her driving competence

My skill set

Main

  • Java
  • Kotlin
  • SpringBoot
  • JPA
  • Flyway
  • QueryDSL
  • RabbitMQ
  • MySQL/PostgreSQL
  • Redis
  • Docker
  • Maven
  • MapStruct
  • Git
  • GitLab CI/CD
  • JUnit
  • Mockito
  • WireMock
  • Testcontainers
  • Sonar
  • Swagger
  • JIRA
  • Agile methodologies

Other Technologies

  • Gradle
  • Jenkins
  • HTML5
  • CSS3
  • PHP
  • SASS/LESS
  • JavaScript
  • jQuery

Languages

  • Czech [Native]
  • English [Advanced]
  • German [Beginner]

Tools / Others

  • MacOS
  • GitLab
  • Scrum / Agile
  • JIRA / Atlassian
  • Insomnia / Postman
  • Google ecosystem
  • Chrome

Driver’s License

  • Category B [Car up to 3.5 t]