Skills
Content:
Key aspects
Can do. Can take up any project, at any stage of development, with a holistic approach.
Proven record throughout my career:
- Led greenfield products and teams from their beginning.
- Brought order and efficiency to existing teams and codebases, even those having issues.
- Improved code, systems, processes.
- Delivered solutions solo or leading one or more teams.
- Full-stack: server, client, mobile.
- Polyglot: experience in many languages, can quickly learn and deliver in any new one.
Principles
KISS, BDD, TDD, test pyramid, clean code, clean architecture, functional programming, 12factor, agile, continuous improvement, continuous delivery, DDD, keep learning.
Practices
FP, OOP, definition by example, unit tests, CICD, config externalization, refactor, loosely coupled services, stateless processes, immutability, pure functions, monitoring & alerting, scrum, PR code reviews, trunk-based development, streams, reactive, event-driven…
Fight anti-patterns: DB integration, shared domain logic across microservices, over-engineering.
Tech
Fullstack: backend, web, mobile (android, fluter).
Languages: js/ts/node, kotlin, flutter, python, c#, java, a bit of go and rust, amd more…
Other tools: jest/mocha/playwright/cypress/cucumber/…, docker, k8s, REST, openapi, jenkins, github actions, terraform, aws, express, react, redux, nextjs, remix, a bit of blockchain…
DBs: sql, nosql - eg: mongodb, mariadb/mysql, postgres…
Soft
Agile, devops-culture, teamwork, tech-lead.
Recommended readings
Books that deeply influenced the way I do software engineering:
- Building Microservices (Sam Newman)
- Clean Code (Robert C. Martin)
- Clean Architecture (Robert C. Martin)
- Continuous Delivery (Jez Humble, David Farley)
- Domain Driven Design distilled (Vaughn Vernon)
- Domain Driven Design (Eric Evans)