Centralized Customer Identity and Data Platform, Elisa
Developer in the ECC (Elisa Capabilities for Common Identity and Experience) team, a core initiative to centralize customer identity and data in real-time with a mission to enhance data quality, privacy, and user experience.
My work involved developing and maintaining resilient backend microservices while engineering secure RESTful APIs for high-traffic digital services. This work was performed in close collaboration with stakeholders to enhance data models and improve the overall platform architecture.
Client Assessment Tool, Evli
A greenfield project related to appropriateness and suitability of Evli's product offering to existing and new customers. The main purpose was to gather product and customer data from several data sources and visualize it in a consistent way that supported assessment of customer's current portfolio and identify any necessary changes.
I worked as a one-person team, handling every aspect of the new application, from UX design to integrations and everything in between.
Renewal of Sales Terminals, Veikkaus
Apart from its online services on veikkaus.fi, Veikkaus maintains a significant presence in grocery stores, kiosks, and horse race tracks. At these locations, dedicated terminal devices handle the sale of Veikkaus products, including draw and sport games, Toto, and scratchers. This project aimed not only to upgrade the terminal devices themselves but also to modernise the entire interaction between the sales clerk and the customer. In addition, during 2023, all these Veikkaus games began to require mandatory customer identification.
I joined the project after two years of active development. The implementation of Toto, the most complex game, had already been completed, and some features for Lotto had been initiated. The remaining draw games, all sport games, and scratchers were yet to be developed. Additionally, because the terminal software was designed to operate on custom Linux-based hardware, ongoing development and testing efforts were necessary to provide continuous feedback and facilitate improvements with the hardware manufacturer.
I had the opportunity to troubleshoot low-level issues associated with the custom hardware, engage in frontend development for the terminal app, and contribute to the development of mission-critical backend services. These backend services required integration with various supporting services developed by other teams within Veikkaus or game systems from 3rd party suppliers.
Voltti, City of Espoo
The project was focused on producing services facilitating online grant applications and comprehensive management of the grant process. There were several different grant types (e.g. youth, culture, sports) with differing requirements in both the applying and managing phases.
From a technical standpoint, this was a greenfield project, allowing our team to build from the ground up and select the entire technology stack. As the initial member to dedicate full-time effort to the project, I laid foundations to the way how backend services were developed. I actively engaged in every aspect of the stack, frequently ensuring that the outcome as a whole was kept consistent and maintainable.
NeMO Sales Tool, KONE
Offline Web Application for selling elevator maintenance contracts. The application ran on a standard tablet browser. A key requirement for sales personnel was to visit customer locations, documenting numerous elevator and environmental details necessary to formulate suitable maintenance offers. Offline support was essential due to fluctuating network conditions at many installation sites.
I joined the project when it was already in the production pilot phase. We started migrating the codebase to TypeScript in order to enhance maintainability and adapt to the evolving needs of our expanding customer base. I was involved in every part of the tech stack but with an emphasis on making the crucial parts more solid (a.o. Offline Web Application).
Freelance Software Consultant
Senior Software Architect
I modernised Signom's technology platform and supported operational activities. My tasks included integrating strong identification services offered by Estonian ee.id and Danish NemID, renewing and decoupling document certification services from Signom’s core service offering, modernising development and CI environments, automating deployment processes, and prototyping and implementing new tools and technologies.
Tech: Java, Kotlin, Spring, Reactor, Thymeleaf, Ansible, Docker, Jenkins
Senior Software Engineer
Carrier grade component design and development for Airwide's internal messaging platform. Providing support and driving development best practices for platform based product projects.
Tech: Java, Spring, JBoss, MySQL
Delivery Architect
Airwide Solutions acquired First Hop; title changed, responsibilities remained the same.
Solution Architect
Requirement capture and solution design for deployment projects. Technical leader of First Hop's Telefónica deployment, including pre-sales support and expert support for deployment personnel. Responsible for coordinating development of Telefónica specific custom solutions.
Consultant
Frontend developer in a project for Spain's biggest mobile operator. Responsible for server-side presentation layer integration and adapting user experience for a variety of mobile terminals and standard web browsers.
Consultant
Helsinki: Accenture's lead developer for the online marketplace of Finland's biggest media group.
Madrid: short term interventions as Java technology expert to ongoing customer projects.
Software Engineer
Enterprise application design and development.
Software Engineer
Nokia WAP Server component development.
AWS Certified Solutions Architect
Certified SAFe Practitioner
Certified SAFe Agilist
Spring Professional
Certified ScrumMaster
Master of Science, Computer Science
- Major: Software Engineering
- 1. Minor: Mathematics
- 2. Minor: Work Psychology and Leadership
Spanish Language and Culture
- API Gateways
- Arrow
- AWS
- Azure DevOps
- Balsamiq
- CircleCI
- Docker
- Electron
- Express
- fp-ts
- Functional Programming
- Gin
- GitHub Actions
- Go
- gRPC
- IndexedDB
- Java
- Kafka
- Kotlin
- Kubernetes
- Microservices
- NodeJS
- OpenAPI
- PostgreSQL
- Preact Signals
- React
- REST
- Rust
- Spring Boot
- Swagger
- TanStack Query
- TanStack Router
- Terraform
- TypeORM
- TypeScript
- Vite
- WebSockets
- WebWorkers