# Ville Lindholm — Curriculum Vitae

@vlindhol
villelindholm
https://lindholm.dev
Helsinki, Finland

I am an experienced full stack software engineer currently based in Helsinki, Finland. I am interested in writing code that is readable, (appropriately) scalable and well-architected. I am always curious about new paradigms, patterns and tools.

I tend to gravitate towards the backend, since that's usually where the growing pains are for services that are scaling up. In the frontend I am strong with React, but am increasingly interested in vanilla JS and other natively supported features that browsers have nowadays.

I've been programming since childhood, first by building Web 1.0-style web pages, then by coding games. At university, I used my programming talents to simulate plasma at a fusion energy lab for my physics degree.

### Recent Experience

  Years of software engineering experience: ~12 years. This is a rough estimate; I've been writing code most of my life and I believe that deserves to be included, so a tacked on a few extra years to represent that!

  #### Memfault (YC19) 2021 — 2024

  Full-stack developer for a web app that ingests data from millions of IoT devices.

  - Migrated the service from Heroku to AWS, reducing costs ~50%.
  - Developed a more advanced permission system (backend + UI), unlocking a new customer size segment.
  - Developed "batch operations" for common tasks in the UI (think e-mail batch operations), preventing churn of large customers.
  - PostgreSQL fine-tuning and optimization, enabling ingestion of 100% more devices.

  Stack: AWS, React (TypeScript), Flask/Sqlalchemy/Celery (Python), PostgreSQL, ClickHouse.

  #### Playvation / Moomin Language School 2019 — 2021

  Senior Software Developer. Backend and admin/content creation UI of an educational mobile app for children (built with Unity).

  - Converted a REST API to GraphQL for the admin web app, plugging dozens of security holes.
  - Added a robust DevOps pipeline instead of manual deployments, bringing deployment time down from hours/days to minutes.
  - Asset organization improvements in the Unity-based mobile app, reducing runtime bugs by 25%.

  Stack: AWS, React (TypeScript), Express (TypeScript), PostgreSQL, Unity (C#).

  #### Duodecim Publishing Company Ltd 2017 — 2019

  Lead developer for EBMEDS, a CE-marked, MDR class IIa medical device (it's purely software though).

  - Full conversion of an extremely legacy JScript(!) codebase into modern TypeScript.
  - Implemented CI/CD, deploying with horizontal scaling on AWS ECS.
  - Made the contents of the service searchable, with ElasticSearch.
  - Integrated the service for use in the Finnish OmaOlo, a national health service usable by 5.5 million users a.k.a. citizens.
  - Early contributions to the global HL7 FHIR standard, mainly by taking part in working group meetings and conferences.

  Stack: Express (TypeScript), Docker, Docker Swarm, AWS, AWS ECS, ElasticSearch

### Education

  #### Aalto University

  Bachelor's degree: Applied Physics
  Master's degree: Applied Physics
  Major: Energy physics (Fusion energy and plasma simulation)

  #### University of Helsinki

  Bachelor's degree: Nordic literature

### Skills

  #### Proficient

  Languages/Frameworks: TypeScript, Node.js, Express.js, Python, Flask, React, HTML and CSS.

  Databases/Infra: REST and GraphQL APIs, AWS, Terraform, Ansible, PostgreSQL, ClickHouse, Redis, RabbitMQ, shell scripting. Also, data modeling and DB schema design/optimization.

  Other: Scrum, Canban and Shape Up work processes

  #### Intermediate

  Rust, C, Swift, C#, C++

  #### Beginner/curious

  Elixir, Common Lisp, Zig

### Other hobbies/skills

  In my spare time I write poetry and fiction, read a lot of books and dabble in improvisational theatre and windsurfing. I also contribute to open source projects when I have the time!

### References

  Available on request (don't want to expose contact information needlessly for bots to scrape).