I’m a Senior Software Engineer focused on building reliable backend systems, improving software delivery, and helping teams turn complex technical problems into clear, practical decisions.
My work sits at the intersection of distributed systems, software architecture, engineering effectiveness, and technical leadership.
- Design and evolve backend services and distributed systems
- Build production systems with Java, Spring, messaging, cloud, and relational or NoSQL databases
- Improve reliability, maintainability, observability, and delivery flow
- Translate business and operational problems into technical solutions
- Mentor engineers and help teams make better technical decisions
- Use AI-assisted development to accelerate engineering work without compromising judgment or quality
I prefer systems that are:
- simple enough to understand;
- reliable enough to operate;
- observable enough to diagnose;
- modular enough to evolve;
- and useful enough to create measurable value.
I care about more than writing code. I also look at the surrounding system: architecture, team boundaries, feedback loops, delivery constraints, ownership, and the decisions that shape long-term outcomes.
- Java and Spring
- Reactive systems with WebFlux and Project Reactor
- Event-driven architecture
- Apache Kafka and asynchronous messaging
- REST and GraphQL APIs
- PostgreSQL, SQL Server, MySQL, DynamoDB, and Cosmos DB
- AWS and Azure
- Kubernetes and Helm
- CI/CD pipelines
- Observability, logging, metrics, and production diagnostics
- Secure integrations and cloud-native services
- Domain-Driven Design
- Test-Driven Development
- Clean Architecture and SOLID principles
- Automated testing and contract testing
- Architecture decision records
- Refactoring and evolutionary design
- Mentoring and knowledge sharing
- Architecture and design facilitation
- Cross-functional collaboration
- Engineering practices and code review
- Flow, delivery, and organizational bottleneck analysis
- Helped reduce critical production defects by strengthening automated testing and engineering discipline
- Improved release consistency through clearer development and review practices
- Supported engineers through mentoring, technical guidance, and collaborative problem-solving
- Designed and maintained backend systems in payments, financial services, healthcare, insurance, education, and other business domains
I’m currently exploring:
- AI-assisted software engineering
- Agentic workflows for engineering teams
- Developer productivity and engineering effectiveness
- Distributed systems and resilient architectures
- Flow engineering and organizational system design
Primary: Java, Spring, WebFlux, Reactor, Kafka, PostgreSQL, DynamoDB, AWS
Additional experience: TypeScript, JavaScript, Node.js, React, Angular, GraphQL, Azure, Kubernetes, Helm, C#/.NET, PHP, Groovy
- Solve the system, not only the symptom
- Prefer evidence over assumptions
- Make decisions and trade-offs explicit
- Optimize for sustainable delivery, not local activity
- Build the smallest solution that can prove value
- Use technology to increase human capability, not replace judgment
I’m interested in conversations about backend engineering, distributed systems, software architecture, technical leadership, engineering effectiveness, and AI-assisted development.

