# woile (@woile.eu)

Profile: https://sifa.id/p/woile.eu
Headline: Senior Software Engineer
Location: Portugal
Website: https://woile.eu/

## About

I'm a passionate engineer with a deep love for Rust, Python, Javascript and Open Source technologies.

I'm a dedicated person, always eager to learn more and face new challenges. Italian Argentine, currently living in the Portugal. 
Previous, I lived in The Netherlands for 8 years.

I have worked with technologies such as Python, Javascript, Django, Flask, SQL and NoSQL databases, Redis, AWS and others, with methodologies such as Scrum and Kanban.

I have automated whole release processes, from the pipelines to deployment to AWS or Kubernetes.

I've contributed to many different open source projects, like django-rest-framework, starlette, actix-web and my own commitizen.

When possible, I try to speak or attend to conferences. I've spoken in Pycon Argentina, France, San Sebastian and PyAmsterdam. I think speaking at conferences is a nice way to share knowledge, and learn new things. I also help organize py.amsterdam meetup  I'm shifting my career towards rust, so open to hear about rust opportunities.

On a personal note, I really like to practice sports and travel around the globe. I have done rock climbing, swimming, dancing, running, biking, calisthenics and more. And I volunteer in an off-grid local self-sustainable farm in Amsterdam.

## Career

- **Senior Software Engineer at KPN** (Apr 2025 - Present)
  Lisbon, PT
- **Senior Software Engineer at KPN** (Feb 2022 - Feb 2025)
  Amsterdam, North Holland, NL
  Part of the data streaming platform team, working with 5 other engineers, using Kafka, AWS, Kubernetes and Python. We build the streaming platform and support other engineers in designing their streaming architecture and integrations with our tooling.
- **Full Stack Software Engineer at KPN** (Jan 2021 - Feb 2022)
  Amsterdam Area, NL
  Part of the "usage team", working on authentication (oidc and oauth) and user profile.
  
  Part of my role involved:
  \- Working with kubernetes, from creating helm charts to deploying to different clusters.
  \- Designing infrastructure modules in Terraform for AWS cloud
  \- Designing pipelines with Jenkins that integrate well with git
  \- Communication with our stakeholders
  \- Delivering features to our customers:
  \- New login application for kpn.com
  \- SMS 2FA
  \- Created a template for frontenders including helm charts, CI pipelines (Jenkins), automatic versioning with changelog generations, dockerized and documented.
  
  Team: 10 people, with 7 developers
- **Full Stack Software Engineer at KPN** (Sep 2017 - Jan 2021)
  Amsterdam, North Holland, NL
  Part of the "campaigning team", which was in charge of delivering the inbound campaigns to different devices/platforms (mobile, web, call centers). During this time, I built a frontend app (React) where the marketing team built their campaigns. And a backend system (Django) which would store the campaigns and would later deliver them through different channels to KPN users.
  
  Achievements
  \- Re-architect backend to better reflect reality, while also making it easier to maintain and extend.
  \- Open source react framework for our design system
  \- Open source mkdocs theme used to generate KPN documentation  Team: 7 people, with 5 developers
- **Software Engineer at IT Crowd Argentina** (Oct 2016 - Mar 2017)
  AR
  Desarrollo de software Full Stack usando Javascript, enfocado principalmente en el Frontend. Algunas de las tecnologias usadas fueron AngularJS, ExpressJS, Restify, Webpack, ES6, MongoDB.
  
  Trabaje en 2 proyectos diferentes.
  
  El primer equipo de 12 personas y el segundo de
  \5.
  
  Ubicacion: Remoto. Durante el trabajo estuve viviendo en Londres, UK, y luego en Buenos Aires, Argentina.
- **Software Engineer at Devsar** (May 2014 - May 2016)
  Desarrollo full stack usando principalmente Python y Javascript, con diferentes frameworks y servicios, como Django, Flask, MarionetteJS, AngularJS, Celery, Redis, MongoDB, RabbitMQ, MySQL, Docker y soluciones de cloud computing como AWS.
  
  El proyecto en el que trabaje era una plataforma de micro creditos, el equipo estaba formado por 6 desarrolladores.
  
  Ubicacion: Buenos Aires, Argentina
- **Analista Funcional at unipe - universidad pedagógica** (Apr 2012 - Dec 2013)
  Diseño y desarrollo de procesos utilizando una herramienta de BPM llamada ConsistGPA, además de multiples tecnologías, incluyendo MySQL, JavaScript y HTML.
  
  Eramos un equipo de 2 desarrollando los requerimientos solicitados por la universidad.
  
  Ubicacion: Buenos Aires, Argentina
- **QA Analyst at Globant** (Apr 2010 - Aug 2010)
  Bug tracking and reporting. Test cases execution. Ad hoc testing, regression testing, scripted testing.
  
  Equipo de 10 personas.
  
  Ubicacion: Buenos Aires, Argentina

## Publications

- Nix flake for Codeberg — woile.eu (Jul 2026) https://woile.eu/blog/nix-flake-for-codeberg
- NixOS with agenix — woile.eu (Jun 2026) https://woile.eu/blog/agenix
- A primer on age encryption — woile.eu (May 2026) https://woile.eu/blog/a-primer-on-age-encryption
- Flawed UX Intuition List — woile.eu (Apr 2026) https://woile.eu/blog/ux-intuition-list
- Adding signature to KDE Okular — woile.eu (Apr 2025) https://woile.eu/blog/adding-signature-to-kde-okular
- Android apps with Slint on NixOS — woile.eu (Apr 2025) https://woile.eu/blog/android-apps-with-slint-on-nixos
- Secret management for the layman — woile.eu (Nov 2024) https://woile.eu/blog/secret-management-for-the-layman
- Network programming in Rust — woile.eu (May 2024) https://woile.eu/blog/network-programming-in-rust
- Nix journey part 3: learning nix-lang — woile.eu (Jan 2023) https://woile.eu/blog/nix-journey-part-3-learning-nix-lang
- Nix journey part 2: replacing apt and brew — woile.eu (Jan 2023) https://woile.eu/blog/nix-journey-part-2-replacing-apt-and-brew
- Nix journey part 1: creating a flake — woile.eu (Dec 2022) https://woile.eu/blog/nix-journey-part-1-creating-a-flake
- A Rust web app with HTML templates — woile.eu (Oct 2022) https://woile.eu/blog/web-app-with-template-in-rust
- Logging in python — woile.eu (May 2022) https://woile.eu/blog/logging-in-python
- Digesting Make and Makefiles — woile.eu (Feb 2022) https://woile.eu/blog/makefile
- The Layout Team — woile.eu (Nov 2021) https://woile.eu/blog/the-layout-team
- Domain driven design at Europython 2021 — woile.eu (Jul 2021) https://woile.eu/blog/domain-driven-design-at-europython-2021
- FIRE para Argentinos en los Países Bajos — woile.eu (Aug 2020) https://woile.eu/blog/fire-para-argentinos-en-los-paises-bajos.es
- Intro to FIRE in the Netherlands — woile.eu (Aug 2020) https://woile.eu/blog/fire-para-argentinos-en-los-paises-bajos
- Automating semver releases with commitizen — woile.eu (Jul 2020) https://woile.eu/blog/automating-deployment-with-commitizen
- Helm 3 - Crafting a Chart — woile.eu (Jul 2020) https://woile.eu/blog/helm-3-crafting-a-chart
- Sublime guide — woile.eu (Jul 2020) https://woile.eu/blog/guide-to-sublime-like-a-normal-person
- Pyenv — woile.eu (Jul 2020) https://woile.eu/blog/pyenv
- 2019 yearly retrospective — woile.eu (Dec 2019) https://woile.eu/blog/2019-yearly-retrospective
- Multiple configurations in kubernetes — woile.eu (Nov 2019) https://woile.eu/blog/multiple-configurations-in-kubernetes
- PyCon France 2019 experience — woile.eu (Nov 2019) https://woile.eu/blog/pycon-france-2019-experience
- Sharing passwords using gopass, git and gpg — woile.eu (Mar 2019) https://woile.eu/blog/sharing-team-secrets
- Raspberry Pi hobby cluster — woile.eu (Feb 2019) https://woile.eu/blog/raspberries-hobby-cluster
- Moving from docker alpine to slim — woile.eu (Jan 2019) https://woile.eu/blog/moving-from-docker-alpine-to-slim
- Local HTTPS development in Python with Mkcert — woile.eu (Jan 2019) https://woile.eu/blog/local-https-development-in-python-with-mkcert
- Tutorial: writing my dreamt cli using decli — woile.eu (Sep 2018) https://woile.eu/blog/creating-a-small-git-like-cli-with-decli
- How to test Selenium scrapper with Python — woile.eu (Sep 2017) https://woile.eu/blog/how-to-test-selenium-scrapper
- How to filter Polymorphic Models with Django Filters — woile.eu (Mar 2017) https://woile.eu/blog/django-polymorphic-integration-with-django-filters
- Eurotrip 2016 — woile.eu (Jan 2017) https://woile.eu/blog/eurotrip-2016
- Get Skype working on Debian Stretch x64 with GNOME3 — woile.eu (Sep 2016) https://woile.eu/blog/get-skype-working-on-debian-stretch-x64-with-gnome3
- Blog inauguration — woile.eu (May 2016) https://woile.eu/blog/blog-inauguration

## Skills

### Technical
- Amazon Web Services (AWS)
- Apache Kafka
- C
- Django
- docker
- FastAPI
- HTML 5
- JavaScript
- Kubernetes
- Linux
- PostgreSQL
- Python
- Python (Programming Language)
- React.js
- Redis
- Rust (Programming Language)
- Software Engineering
- SQL
- Terraform
### Other
- Marionette.js

## Credentials

- CKA: Certified Kubernetes Administrator — The Linux Foundation (Aug 2021 - Aug 2024) https://www.credly.com/badges/29c49f36-e1f3-4469-94b1-34b185e4cbcc/public_url
- Amazon Web Services Solutions Architect Associate — Amazon Web Services (AWS) (Apr 2021 - Apr 2024) https://www.credly.com/badges/5703c0ac-9e0a-4618-9dc0-b9b5e7ebf3d1/public_url
- Cambridge English: First (FCE) — Cambridge English Language Assessment http://www.cambridgeenglish.org/exams/first/?utm_campaign=linkedinfirst

## Education

- **Universidad Tecnológica Nacional** — Information Systems Engineering, Systems Engineering (Master) (2008 - 2017)

## Languages

- Español (native)
- Inglés (full professional)
- Portugués (limited working)
- Dutch (elementary)

## Links

- website: https://woile.eu/
- Codeberg: https://codeberg.org/woile (verified)
