Want to work with me?
I'm an independent software consultant/contractor. Mostly I work on the kinds of distributed systems problems that you get when you were trying to build a web application but, whoops, everything is distributed systems now.
I'm looking for three kinds of gigs right now.
- Elixir & Phoenix jobs
- Short consulting assignments where I spend anywhere from a few days to a few weeks looking at a problem, and then make a recommendation
Tracing & Observability
Does your telemetry need an upgrade? Are there bugs that you've been having a hard time tracking down? Have you been meaning to try Honeycomb, Lightstep, or another tracing provider, but haven't been able to find space in your roadmap to do the work?
Once I can build and deploy an application, I can generally get basic tracing set up in it within a day. Maybe a little longer if I need to learn the language first. (I've done instrumentation projects in Java, Ruby, Elixir, Go, and Python.) I will set it up in a vendor agnostic way – I can even set you up to send the same telemetry to multiple vendors on their free plans, so you can make a direct comparison between them with real data.
I'm also available for extended hands-on-keyboard work, if you're working in Elixir. I've been learning it through side projects for the past six months or so, have absolutely fallen in love, and I'm looking to get more professional experience.
You will probably get the most value out of me here if you have an existing team for me to join that writes tests first and pairs at least occasionally. I'm also comfortable working solo, though, so I'm comfortable with a broad range of working styles.
I'm also open to joining a team as a full time employee rather than a contractor if it's a great fit. My main reason for being a contractor is flexibility and vacation time: I like to take weeks off from work at a time to do things like walk around the San Francisco Bay. If you can accomodate that we should definitely talk. But the right combination of team chemistry and problem domain would tempt me as well.
Other consulting engagements
I'm open to a variety of shapes here but the basic problem that people bring me in for looks like this:
- You're a senior engineering leader, a VP or a Director
- You have a background with Extreme Programming or something similar
- You've recently taken over a new team, and that team has a mix of interlocking technical problems that are making it hard for the team to make progress on their core objectives
- There are multiple conflicting opinions about what "should be done"
In this situation I can come in and do a mix of interviews and technical investigation and then give you an assessment of:
1) the general shape of the problem
2) which parts of it are the worst, and should be addressed first
3) your options for handling them, and the tradeoffs
Often you can get someone internal to do this kind of assessment, but sometimes it's nice to have an external consultant do the work, either because you don't have the bandwidth to spare, or because it's useful to have someone without any history look at the situation. I'm also often able to be useful for leaders who share an Extreme Programming background but where that's not the dominant working style in their current environment, and they're trying to distinguish between "working, just not what I'm used to" and "actively needs to change."