Disable slides Enable slides

Building the future,
one line of code
at a time.

I'm Aleksi Salmela — a developer passionate about building world-class tools that make people's lives easier. I care about UX, accessibility, and performance.

Let's talk Discover my work

From curiosity to craft.

Started writing code in 2006 out of pure curiosity during elementary school and never stopped. From shipping my first real product at school to leading development team at giosg, every step has been driven by a simple belief: software should genuinely help the people using it.

  1. 2006

    First line of code

    Wrote my first PHP webpage on Mikro bitti magazine's free web hosting space for subscribers. Realised I could build things that actually worked — and got hooked.

  2. 2010

    First shipped product

    Built InfoTV at school to replace an ugly PowerPoint-based system that only worked in IE. Learning what it means to ship something real.

  3. 2017

    Nokia internship

    Joined an international team in Espoo building an internal test environment reservation system. Learned Django, MySQL, and what it's like to work across time zones with colleagues in Hangzhou.

  4. 2018

    BirdLife — rewriting Tiira

    Civil service turned into a paid role. Helped rewrite Finland's national bird observation service from a static prototype, introduced modern CI/CD, and learned what it takes to build for a mission-driven team.

  5. 2019

    Software Engineer at giosg

    Joined a fast-growing SaaS company. Deepened expertise in PostgreSQL performance, helped distribute test execution across multiple nodes, and transitioned into React development after a team restructuring.

  6. 2023

    Development Team Lead at giosg

    Stepped up to lead development team. Still writing code, now also helping others do their best work.

I believe great software is invisible.

I work across the stack — from React frontends to PostgreSQL query plans — with a focus on the things users never notice: speed, reliability, and the small details that make an interface feel effortless. Clean, maintainable code with tests is not a nicety; it's what lets a team move fast without breaking things.

Outside of work, I enjoy baking, electronics, and experimenting with new technologies. I'm currently developing an LLM coding harness to deepen my understanding of AI-assisted software development.

"Code is finished when the next person can change it with confidence."
TypeScript
React
Node.js
PostgreSQL
Security
Architecture
Linux
Django

Projects I'm proud of.

nanoInkscape

Tried building a small vector graphics editor after discovering SVG support on modern web browsers. The color wheel and path editing experiments from this demo later showed up in other browser tools I built.

Text editor

A WYSIWYG editor side quest from InfoTV, built in plain JavaScript without frameworks. It taught me how hard browser rich-text editing really is and why I am happy to use Slate in my current and future work.

Pelix

Wrote a parser, interpreter, and debugger for a small toy language during a personal two-week hackathon in Lapland. I wanted to teach programming to my cousin. The off the shelf generic parsing library was rewritten after hitting performance limits with error handling.

The right amount of process
for each problem.

  1. Understand

    Clarify the problem from the stakeholders. See where the request is coming from. Think deeply what is the best solution for the problem without causing more problems than it solves.

  2. Design

    Sketch the user interface for the solution. Consider the internationalization and customer specific setups when writing the ticket for the feature.

  3. Build incrementally

    Ship small, working pieces if feature is large enough. Don't over-engineer the solution. Don't overwhelm the reviewer(s) with the code changes.

  4. Refine

    The first version doesn't need to be perfect. Measure, learn, and iterate. Leave every codebase cleaner than you found it.

Trusted by those
who ship things.

These are some of the things people have said about me that have stuck with me. They are all paraphrased from memory. So not literal quotes.

  • Wow, you really care about the project.

    I wanted to talk with him about an issue. I don't anymore remember what the issue was, but that comment stuck with me.

    Teammate from hangzhou office Nokia
  • Aleksi is such coding god (fin. koodijumala)

    Few times I have helped a colleague after he has been stuck on some django issues.

    Member of AI team giosg
  • You have nice mix of technical and commercial skills.

    After some meeting where we talked about the project.

    C-level manager giosg

Let's build something
together.

Have an idea in mind, a problem worth solving, or just want to say hello? My inbox is always open.