Aivaras Šaltanovas
About
Good code should be easy to read, easy to change, and hard to break. I deeply focus on code quality, maintainability, and doing things the right way. Experienced in building financial transaction systems. Deep Kotlin expertise, currently expanding into Go. Comfortable driving independent projects and contributing to cross-functional teams.
Work Experience
nono.networkContractRemote
Software Engineer
• Responsible for implementation and maintenance of AWS cloud infrastructure, built from scratch using AWS CDK, supporting a multi-environment setup. • Designed a flexible, domain-agnostic entity model for ordering and booking flows across retail, service, and booking-based businesses. Aimed for future flexibility needs, avoiding locking the system into a rigid product/variant structure. • Implementing the full ordering lifecycle flow, covering order confirmation, placement, completion, receipt generation, and time-based booking logic. • Stepping beyond backend work to build server-rendered UI using Go templates, turning Figma designs into simple yet effective views with a mix of Bootstrap, custom CSS and plain JS. Technologies: Go, AWS CDK, PostgreSQL, sqlc, Bootstrap, Github Workflows
kevin.Full-timeHybrid
Backend Software Engineer
• Joined a newly formed team building a modern event-driven payment processing platform (Visa/Mastercard-like) to process transactions between acquirers and issuers. • Owned the full design and end-to-end implementation of the team’s core settlement process, covering settlement creation, initiation, and reporting. • The settlement process was built to operate within the platform’s event-driven distributed architecture (Kafka-based), consuming & producing events, as well as scheduling time-based triggers for executing settlement actions. • Practiced TDD, maintaining >90% test coverage. Contributed to a strong testing culture by developing integration-rich tests supported by Testcontainers, WireMock, and LocalStack. • Presented new product capabilities during biweekly demos, clearly explaining its functionality and impact to both technical and non-technical stakeholders. Technologies: Kotlin, Ktor, Kafka, CockroachDB, jOOQ, Liquibase, Testcontainers, WireMock, Localstack, GitLab CI/CD, Kubernetes
Junior Backend Developer
• Architected a robust API from the scratch, seamlessly integrating with various eCommerce platforms, including Ecwid, Mozello, and others. The Strategy pattern became my biggest friend in dealing with different platform behaviors in a clean and maintainable way. • Tackled many common backend challenges, such as race conditions, idempotent operations, and backward-compatible API and database changes. Notably led a complex backward-compatible data migration, introducing inheritance mapping and splitting a legacy table into multiple subtype tables without downtime or data loss. • Brought a zero-tested production service under control by raising test coverage to ~80%. • Led migrations of all team repositories from Bitbucket to GitLab and backend services from AWS ECS to Kubernetes, ensuring zero downtime and no disruption to existing workflows. • Took the lead in crafting comprehensive developer documentation for kevin.'s API, empowering both internal teams and external clients. • Provided top-tier technical support for VIP clients. Collaborated closely to troubleshoot and optimize their integration experiences. Technologies: Kotlin, Spring Boot, Micronaut, MySQL, Flyway, Bitbucket CI/CD, Terraform
Education
Vilnius University
Main Skills
Projects
Below is a list of personal and work projects, more can be found on my GitHub
Rails Processing
Payment processing service: clearing, settlements, reporting etc.
Shop Rental Gateway
Closed API integrating with various opensource eCommerce platforms
Payment Switch Gateway
Closed API integrating with other payment providers while enabling easier integration with kevin. API
SmartSaver
Application suggesting various money-saving strategies and personalized financial recommendations based on user expenses
Loan Calculator
Financial loan planning application visualizing a comprehensive monthly repayment breakdown
Student Registration System
Java application to manage student enrollment
GhostQuest Game
Adventure Java game, where players navigate a dynamic world, collecting chests, while trying to avoid deadly ghosts to survive