hi, I'm
vanntile 👋

software engineer && privacy advocate
Skip to main content

I'm vanntile, a software engineer creating safer digital experiences. My technical expertise allows me to craft reliable modern systems and learn the inner workings of legacy ones.

The core of my passion resides in privacy, security and open-source software. I’m actively interested in performance, maintainability and user-centered functionality. I like to use modern tools, reliable frameworks and classic, battle-tested principles.

Internally, I’m focused on acquiring knowledge and practicing skills as I carefully improve the technical quality of my work. Externally, I focus on the intersection between product feasibility and customer experience. I understand the designers’ aim as well as the developers’ constraints, so you know I enjoy collaborating with proactive and curious teams on challenging projects.

We can do outstanding work together as long as you don’t mistake my skill section for Pokemon badges. My preferred work is full-stack development and DevSecOps.

./about/tech

I am an in-progress computer engineer with a deep passion for the worlds of frontend, design and deployment. Keep scrolling if you wanna know why, how and what I work on!

What is my tech stack?

Languages
JavaScript (ES2021)TypeScriptGo 🇬Python 3 🐍C/C++Haskell λ
Markup
JSONYAMLHTMLMarkdownMDX
Frameworks
Astro 🚀NextJS 🇳React ⚛️Vue 🇻Angular 🛡️Tailwind CSS 🍃FastAPI ⚡ExpressDjangoFlaskGTK/gtkmmunified
Testing
Robot 🤖CypressJest 🃏JUnit
Tools
Deno 🦕NodeJS 🟩npm 📦Docker 🐳Jenkins 🎩
Platforms
GitHub 🐙GitLab 🦊Bitbucket 🪣HerokuLinodeMastodon 🐘
Standards & paradigms
FOSSOpenAPIRESTGraphQLsemantic webfunctional programming
Design tools & knowledge
InkscapeFigmaGIMPSVGTypographyLayoutVisual idenitities
Other snappy stuff
gitLinuxGNOMEObsidianVSCodiumvimJupyterPrettier

./about/experience

SSH Communications Security

Software Engineer · Full-time
Sep 2023 - Present · 5 months
Helsinki, Finland
  • Collaborated in a cross-functional team to develop customer-requested features, eliminate bugs and improve architecture of a B2B product.
  • Core team member for a machine-in-the-middle service which secures and monitors access to target databases. As part of the feature, implemented authentication for the MySQL wire protocol, validated it using a fuzzer and wrote functional tests using the Python Robot framework.
  • Represented SSH in several official events and served as a guest lecturer, delivering talks to university students on topics such as cybersecurity, cryptography, CLI tools and working life.
CybersecurityTeam CollaborationCloud ComputingMySQLGo

Junior Software Engineer · Full-time
Sep 2022 - Aug 2023 · 1 year
Helsinki, Finland
  • Using pair-programming, architected and developed a FastAPI backend application controlling ephemeral Docker containers running a machine learning model. The Tensorflow model executes anomaly detection for User and Entity Behavioral Analysis in a microservice-based application written in Go.
  • Implemented watermarking in a React application displaying remote SSH and RDP connections by communicating over WebSockets to the Go backend and generating a dynamic fill using CSS.
GoReact.jsCSSComputer NetworkingRed Hat Enterprise Linux

Software Engineering Trainee · Full-time
Jun 2022 - Aug 2022 · 3 months
Helsinki, Finland

JavaScriptNode.jsPythonRobot FrameworkFastAPIDocker

Aalto University

Master of Science, Security and Cloud Computing
Sep 2021 - Aug 2023
School of Science · Espoo, Finland
  • GPA: 4.45/5
  • Thesis: Privileged access management for databases, 4/5

Polytechnic University of Bucharest

Bachelor of Engineering, Computer Engineering
Sep 2017 - Jul 2021
Faculty of Automatic Control and Computer Science · Bucharest, Romania
  • GPA: 9.79/10 (top 5% of the class)
  • Thesis: Customer feedback analysis in logistics, 10/10

Åbo Akademi University

Exchange Student
Aug 2019 - May 2020
Erasmus+ in School of Computer Science · Turku, Finland

GPA: 5/5

Aalto University

Research Assistant · Part-time
Dec 2021 - May 2022 · 6 months
Espoo, Finland
  • Performance testing in a complex client-server application using Pub-Sub queues and multiple private blockchains operated using smart contracts.
  • Collected data from a set of containers using event-driven RabbitMQ communication and analysed it using scipy in an iterative data-driven research process.
Performance testingDockerBlockchainPythonpandasJupyter

Aalto Science Institute

Research Assistant · Full-time
Jun 2021 - Aug 2021 · 3 months
Human Computer Interaction department · Espoo, Finland
  • Worked on a Vue app that scores a given website (screenshot or URL) on a set of UIX design metrics researched in the Aalto User Interfaces department. Upgraded Webpack configurations and frontend dependencies, implemented dynamic plotting of results and improved backend logging.
  • Created a Figma plugin that communicates to the user a set of color palettes generated by a machine learning model that could improve their design. Implemented the UI in Preact, using TypeScript models and middleware. Written the backend application using FastAPI. Designed the data interfaces and collaborated for model integration.
VuePreactTypeScriptMongoDBFastAPIFigma APItornado

Postis

Junior Software Engineer · Part-time
Sep 2020 - May 2021 · 9 months
Bucharest, Romania
  • Analyzed customer post-delivery text reviews looking to discover trends and associate them with business issues.
  • Implemented internationalization and managed the frontend of a SaaS web platform as part of the core development team of a startup. Worked closely with customer support and client representatives to improve the end-user experience.
AngularJSSvelteNLPPython

Front-End Developer · Internship, Part-time
Jul 2018 - Sep 2018 · 3 months
Bucharest, Romania
  • Managed a delivery tracking web application of over 50 000 orders, using AngularJS, Bootstrap, Grunt, Git versioning and proprietary REST APIs.
  • Fixed interface bugs, redesigned the UI of the home dashboard, shortened the load time by removing 7 unused dependencies and added 5 new client functionalities while pushing over 75 commits.
  • Reduced main app size by 20% and an order tracking page by 90% by using modern EcmaScript 6 instead of jQuery.
AngularJSBootstrapREST APIsJavaScript

Inkscape

Software Developer · Full-time
Jun 2020 - Aug 2020 · 3 months
Google Summer of Code participant · Remote
  • Participated to GSoC as a developer for Inkscape, an open-source vector design desktop application that follows the SVG standards.
  • Implemented a major UI refactoring in 20 sub-features, consisting of removing old dependencies, standardising a design pattern and propagating document state.
  • Eliminated more than 12 active UX issues by rewriting the C++ dialog system in over 120 commits, 6000 lines changed and reducing code length by 10%.
C++GTK+gtkmmUXrefactoring

Software Developer · Full-time
May 2019 - Aug 2019 · 4 months
Google Summer of Code participant · Remote
  • Implemented JavaScript polyfills that reproduce, in browsers, SVG functionality which exists in Inkscape but has been dropped by the SVG2 specification draft.
  • Had over 60 commits in 4 feature branches over 4 months, using JavaScript and the GTK+ toolkit.
  • Developed new functionality (paint servers preview dialog) as a starter point for future fill and stroke paint servers unification.
JavaScriptpolyfillsSVGGTK+

Etsimo Healthcare

Junior Software Engineer · Intership, Full-time
Jan 2020 - Jun 2020 · 6 months
Turku, Finland
  • Improved RxJS state in an Angular user-facing app of the certified Diagnosis Engine.
  • Integrated dynamic translations with an existing Flask REST backend, reducing load time by 20%.
  • Developed, in a team of two, over 12 iterations, an intended-use conversational workflow demo of the Etsimo service capabilities, deployed from a Node.js server with a Preact chat interface.
  • Written from the bottom up a new TypeScript library that exposes Etsimo’s API for developer use, helps with type checking for JavaScript apps and has automated unit tests.
APIAngularRxJSPreactFlaskNodeJSTypeScript

Codette

Technical Trainer
Sep 2018 - Jun 2020 · 1 year 10 months
Bucharest, Romania
  • Contributed as a technical trainer by creating resources and delivering presentations at four editions of a web-technologies workshop, based on Angular, with a total of 80 participants.
  • Contributed as a designer by creating the branding, designing and implementing the website and creating the social media posts of a mentorship program for university students called Techtor.
  • Contributed as a technical trainer at a mobile development workshop for 20 young children.
designingtrainingdocumenting

LSAC - UPB university guild

Graphic Designer
Feb 2018 - Jan 2019 · 1 year
Liga Studentilor din Facultatea de Automatica si Calculatoare · Bucharest, Romania
  • Created posters and graphics for the student association events, with a reach of 3000 people and set the creative direction to a LSAC organised hackathon.
  • Managed the fifth HackITAll edition, a student hackathon supported by Amazon, in the position of the Design Project Manager.
  • Mentored new members and trained them through an Introduction to design workshop.
designingmanagingmentoring

Coder Dojo

Educator · Bi-weekly
Sep 2018 - Jun 2019 · 10 months
Bucharest, Romania

Participated twice a month as a trainer at workshops for primary-school children where we taught basic programming using online tools, mainly Scratch.

./blog/coding/latest

A short return to being an educator

A quick story about my latest experience of teaching tech to students and how that brings both nostalgia and aspirations for the future.

From NextJS to Astro

Migrating vanntile.com from NextJS to Astro and how I let go of React in favor of static site generation.

How to make a composited typing animation with Tailwind

Creating beautiful animations using Tailwind can also be efficient, by turning the width-based animation into transform-based ones.

./public/contact

You can find me here and there. I recommend you message me 📨 on Mastodon or LinkedIn.

vanntile on GitHub vanntile on LinkedIn vanntile on Mastodon vanntile on Dribbble vanntile on StackOverflow vanntile on GitLab