What I do

I build software

I enjoy designing and developing great software. I'm a big fan of readable, maintainable code, and I strive to provide as much value as possible to users. These are the questions I like to ask when creating software products:

  • Are we building the right thing? Do users really need this feature?
  • Are we building it right? Are we leaving any broken windows?
  • What are we learning from building this?

I find Agile provides a great framework to answer these questions.

As for technologies, I've spent the past four years specializing in the Lightbend platform. I love Scala as a language, and believe it's here to stay. I like Akka for large concurrent systems. I enjoy using Play for web applications. No technology is perfect, so I try to contribute to these projects whenever I can (I even have a -3 line commit on the Akka repository, yay!).

I train others

I have always enjoyed teaching. It forces me to learn things really well, and allows me to accompany trainees on their learning process. The greatest thing about teaching is seeing someone's face light up when they internalize something they've learned. 

For the past two years, I've been training developers on the use of Scala, Play and Akka. I teach the official Lightbend training courses, as well as customized programs designed through Bold Radius. These are courses that can take you from zero Scala knowledge to being able to read production code without getting stuck.

I also mentor teams as they move up the learning curve and encounter bigger and more difficult challenges. I give them a hand so they can focus on developing scalable, effective and maintainable software instead of struggling with the language or the tools.

I lead teams

I'm good a connecting with each member on a team, figuring out where they need to go, and help them bring out the best in themselves. I have been in technical leadership roles and volunteer coordination positions. In every organization I've been a part of, I've tried to help by leading others to achieve their potential.

As a team leader, I believe in empowering others and getting out of the way so the team as a whole can be successful.

I'm also good at balancing business needs with team capabilities, and I am not afraid to speak out when pressures or constraints are hurting the team or project.

I hired Alex as the second lead developer on Gush. He was awesome. Alex gets things done, his code is fantastic, he’s always thoughtful when discussing features or technical topics, he fit in great in the team, and I would love to work with him again. You can’t go wrong hiring him.
— Peter Van Dijk from Huge
Alex was awesome and very thorough on all topics he presented. He is also a great mentor 1 on 1 when working in a workshop session, he was always ready to answer the questions and jump up to the white board and map out solutions in visual ways whichhelped me understand the more complicated things (like Akka).
— Anonymous trainee