I'm an experienced executive software architect with a proven track record of shaping and transforming organisations and software development processes.
Throughout my career, I have held various roles including CTO, Director of Engineering, Architect, Fullstack Developer, Scrum Master, Product Owner, and Project Manager, leading teams of up to 30 developers.
I have a strong background in defining and driving technological visions, as well as growing high-performing engineering teams.
I have worked with both startups and Fortune 500 companies, successfully delivering multiple projects and products across various domains. My expertise spans a wide range of technologies.
Even to this day, I continue to make valuable contributions in both hands-on programming and strategic decision-making. For example, I have led the design and implementation of a new micro-services architecture and created a roadmap for an organisation-wide technology transformation.
After spending over 20 years working in permanent roles, I made the decision to start my own consulting business and offer my services as a freelancer. This allows me the flexibility to choose the type of projects I work on, enabling me to engage in diverse and demanding projects at a fast pace, which I prefer. I'm committed to delivering the best possible quality, paying attention to both the bigger picture and the finer details, while remaining pragmatic and result-oriented.
My professional style has been greatly influenced by the Agile Manifesto, the Software Craftsmanship Manifesto, Lean Software Development and TQM. Among others, I have found inspiration in the works of individuals such as W. Edwards Deming, Peter Drucker, Robert C. Martin, and Martin Fowler, who have played a significant role in shaping my approach and aspirations.
I enjoy regularly reading HBR, Wired, Medium,Hackernoon, Food for Agile Thought, and The Exponential View among others.
When it comes to developing software, here are the stacks with which I have hands-on experience as an individual contributor in the most recent years. Some of these experiences have been extensive, while others have been limited, but they have all been in real-world projects:
-
Programming Languages: JavaScript/TypeScript, Java, Python
-
Frontend: React, Angular, jQuery, Flutter
-
Backend: FastAPI, Flask, Spring Boot, Express, AWS Lambda
-
ML/AI Vertex AI, Gemini, PyTorch
-
Database: MongoDB / Mongoose, MySQL, Redis, PostgresSQL, Oracle DB, H2, Flyway, Liquibase
-
Testing: pytest, Jest, Jasmine, Karma, Mocha, JUnit, Cypress, Protractor, Selenium, Pact.io, Cucumber, Artillery
-
Continuous Integration/Continuous Deployment (CI/CD): GitHub Actions, Jenkins, Bitbucket, GitLab, Circle-ci
-
Cloud Providers: GCP, AWS, Scalingo, Cloud Foundry
-
IaC: Pulumi, Terraform, Ansible, Bash
-
Infrastructure: Kubernetes, Docker, nginx, VirtualBox, Linux
-
DevOps Infrastructure: SonarCloud, Nexus, Artifactory, Npm, AWS, New Relic, Sentry, Grafana, Kibana, Prometheus
Additionally, besides my personal hands-on experience, I have worked with teams that build products and projects in various stacks, including:
-
Platform Stacks: Electron, React Native, Flutter, Cocoa, Android SDK, .NET, Apache Cordova
-
Machine Learning and Data Engineering Stacks: TensorFlow, PyTorch, Keras, Scikit-learn, Pandas, Athena, Airflow
-
Cloud Providers: AWS, GCP, Azure, Heroku
-
Languages: JVM (Java, Kotlin, Scala, Groovy), JavaScript/TypeScript, Objective-C, C++, Go, Python, PHP