Joona Marjakangas, Developer in Helsinki, Finland
Joona is available for hire
Hire Joona

Joona Marjakangas

Verified Expert  in Engineering

Full-stack Developer

Location
Helsinki, Finland
Toptal Member Since
September 4, 2022

Joona is a talented, dedicated, and highly efficient full-stack developer. He is passionate about solving problems and delivering high-quality software. Joona is especially proficient when working with microservice back ends and React front ends, and his communication skills are top-notch!

Portfolio

Cabapp Solutions Oy
TypeScript, Node.js, Python, React, React Native, GitHub Actions, REST...
Smartly.io
TypeScript, Node.js, PHP, Elixir, PostgreSQL, GitHub Actions, GitHub, React...
Paetronics Oy (acquired by AddSecure Smart Transport)
PHP, React, Node.js, Backbone.js, Sass, REST APIs, JSX, Responsive Web Apps...

Experience

Availability

Part-time

Preferred Environment

Linux, MacOS, Git, Visual Studio Code (VS Code), Jira, Slack

The most amazing...

...project I've worked on is the implementation of an improved, granular access control system for one of the world’s largest advertising automation platforms.

Work Experience

Co-founder

2022 - PRESENT
Cabapp Solutions Oy
  • Made the technical design and implementation for a serverless back end consisting of TypeScript, Node.js, and Python services and deployed it to AWS.
  • Developed CI/CD pipelines with GitHub Actions to automate back-end and front-end deployments.
  • Worked with designers to construct and publish a mobile application for iOS and Android using React Native and Expo.
  • Led the development of React-based front ends to be used by clients and internal personnel.
  • Worked with clients to develop integrations with the clients' platforms via REST APIs.
  • Created analytics tools to measure business success using TypeScript, Node.js, React, and AWS DynamoDB.
Technologies: TypeScript, Node.js, Python, React, React Native, GitHub Actions, REST, Serverless Architecture, REST APIs, JSON Web Tokens (JWT), GitHub, JSX, Responsive Web Apps, Flux, Amazon Web Services (AWS), JavaScript, APIs, CI/CD Pipelines, Back-end Development, Back-end, Serverless, Jest, NoSQL, Flask, HTML, CSS, iOS, Android, Full-stack, HTML5, Front-end, Web Development, JSON, Unit Testing, Docker, Expo.io, SQL, Firebase, Maps, AWS Lambda, TestFlight, Mobile App Development, Authentication, React Redux, Reusable Libraries, Application State Management

Full-stack Developer

2019 - 2022
Smartly.io
  • Worked with a team of 6–9 people to design and implement a new access control system for one of the world's largest advertising automation platforms. The new system included an ACL microservice and client libraries written in TypeScript and Node.js.
  • Wrote automated tests and deployment scripts to ensure smooth zero-downtime migration from the old access control system to the new one.
  • Created an identity provider microservice in TypeScript and Node.js to manage authentication to external parts of the Smartly.io platform.
  • Implemented SSO login and SCIM identity management possibility to the Smartly.io platform on a team of 6–9 people. This included a new TypeScript and Node.js microservice as well as modifications to an old PHP back end.
  • Worked with a team of 6–9 people to create a new notification pipeline to ensure that millions of automated notifications every day get delivered to their recipients without delay. This included a service written in Elixir and a React front end.
  • Refactored and rewrote large parts of an Angular legacy front end in React.
  • Implemented CI/DC pipelines for microservices running in Kubernetes using GitHub Actions.
Technologies: TypeScript, Node.js, PHP, Elixir, PostgreSQL, GitHub Actions, GitHub, React, AngularJS, Kubernetes, Microservices Architecture, ACL, REST APIs, JSON Web Tokens (JWT), Redux, OAuth, JSX, Flux, JavaScript, APIs, CI/CD Pipelines, Back-end Development, Back-end, Jest, MongoDB, NoSQL, HTML, CSS, Full-stack, HTML5, Front-end, Angular, Web Development, JSON, Unit Testing, Docker, SQL, Symfony, Authentication, React Redux, Reusable Libraries, Application State Management

Full-stack Developer

2015 - 2019
Paetronics Oy (acquired by AddSecure Smart Transport)
  • Rewrote a legacy jQuery and Backbone.js front end in React to increase maintainability as well as to update the look and feel of the UI from a fixed width to fully scalable between different monitor sizes.
  • Made the technical design and implementation of new modules for logistics management using PHP, Node.js, and React.
  • Created the technical design and implementation for a real-time messaging service between HQ and truck drivers in PHP, Node.js, and React.
Technologies: PHP, React, Node.js, Backbone.js, Sass, REST APIs, JSX, Responsive Web Apps, Flux, JavaScript, APIs, Back-end Development, Back-end, Jest, HTML, CSS, Full-stack, HTML5, Front-end, Web Development, JSON, Unit Testing, SQL, Responsive UI, Symfony, React Redux, Reusable Libraries, Application State Management

Full-stack and Mobile Developer

2016 - 2018
Airue.net
  • Developed extensive invoicing and accounting software designed for small businesses. The app was implemented with Django, Zappa, React, and React Native and deployed to AWS as a serverless application.
  • Created a mobile application for iOS and Android in React Native to allow small business owners to conduct day-to-day business operations directly from their phones. The app works by connecting to a serverless REST API running in AWS.
  • Created an integration from Airue.net to a leading e-invoicing service to allow businesses to send, receive and process electronic invoices directly from their phone or a web application. The integration was made using SOAP standards.
Technologies: Python, Django, React, React Native, TypeScript, Zappa, Serverless Architecture, PostgreSQL, REST, SOAP, REST APIs, Redux, JSX, Responsive Web Apps, Flux, Amazon Web Services (AWS), JavaScript, APIs, Back-end Development, Back-end, Serverless, Jest, HTML, CSS, iOS, Android, Full-stack, HTML5, Front-end, Amazon RDS, Web Development, JSON, Unit Testing, SQL, Responsive UI, AWS Lambda, Mobile App Development, Authentication, React Redux, Reusable Libraries, Application State Management

Improved Access Control System for Smartly.io

Smartly.io platform for online advertising automation had grown exponentially over a few years and needed a new system for managing user access to different application parts. The old system was part of an old PHP back end and could not handle the needs of multiple newly added microservices and their varying needs for both resource- and role-based access control.

The new solution had to be highly scalable and fault-tolerant since it would be part of the application's critical path. The application was constantly under heavy load handling millions of ads and terabytes of data daily. The migration from old access control was also required to be done with zero downtime not to affect the user experience.

I acted as a full-stack developer in the team responsible for this project and I took part in both the technical design and the implementation of the new access control system. My work included participating in architectural planning sessions, developing TypeScript and Node.js microservices running in Kubernetes, developing front-end modules using TypeScript and React, writing automated tests, writing migration scripts, and writing CI/CD pipelines using GitHub Actions.

Notification Service for Smartly.io

Smartly.io required an improved system for sending real-time push notifications about events related to the performance and deliverability of their ads. This project included an Elixir-based back-end service running in Kubernetes as part of Smartly.io's microservice back end and a React-based front end. We used WebSockets to communicate between the front and back end and a RabbitMQ queue to manage incoming notifications. I acted as a full-stack developer taking part in the development of both the front and back end.

SSO and SCIM for Smartly.io

A new TypeScript and Node.js microservice and refactoring of an old PHP back end and a React front end allow Smartly.io's client companies to manage authentication and authorization of their employees through SCIM API and SSO login. I acted as a full-stack developer taking part in all parts, including back-end work with the old PHP back end, the new microservices, and front-end development.

Invoicing and Accounting App for Finnish Small Businesses

http://www.airue.net
An extensive cloud-based invoicing and accounting application for small businesses in Finland. The platform includes a serverless Django back end running in AWS, a front end created with React, and a mobile app created with React Native. This was a solo project, so I made both the design and implementation for all parts of the platform.
2014 - 2020

Bachelor's Degree in Computer Science

Aalto University - Espoo, Finland

Libraries/APIs

Node.js, React, Zappa, REST APIs, React Redux, Backbone.js

Tools

GitHub, JSX, Expo.io, TestFlight, ACL, RabbitMQ, Git, Jira, Slack

Frameworks

React Native, Jest, Django, JSON Web Tokens (JWT), Redux, Flux, AngularJS, Flask, Angular, Symfony

Languages

TypeScript, JavaScript, HTML, CSS, HTML5, SQL, PHP, Python, Elixir, Sass

Paradigms

Unit Testing, Microservices Architecture, Serverless Architecture, REST

Storage

PostgreSQL, JSON, NoSQL, MongoDB

Platforms

Amazon Web Services (AWS), Docker, AWS Lambda, Kubernetes, Linux, MacOS, Visual Studio Code (VS Code), iOS, Android, Firebase

Other

Software Engineering, APIs, Back-end Development, Back-end, Full-stack, Front-end, Web Development, GitHub Actions, WebSockets, Responsive Web Apps, CI/CD Pipelines, Serverless, Amazon RDS, Responsive UI, Authentication, Reusable Libraries, Application State Management, SOAP, OAuth, Maps, Mobile App Development

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring