Consulting Retrospective and Summer Learning Plans
After dedicating a full time effort towards an Elixir/Phoenix consulting project since October, I’m taking some time off and looking forward to a nice mix of vacation and personal projects.
The project itself is under NDA, but I can say it was primarily Elixir and Phoenix coding as a subcontractor through Test Double. Test Double was great to work for, and very supportive. I had a lot of flexibility allowing me to shape my responsibilities, primarily landing on team support through code review, work shaping and mentoring. I did take ownership of some specific platform features but team support was the primary task.
This was easily the largest team project I ever worked on. We had over 100 code-level contributors to the repo and that does not even include a whole host of product managers, designers and customer support folks who were involved. The product we worked on is a high traffic, consumer-facing website. There were many concerns for technical scaling but I was actually more interested in the human scaling concerns, like how do you get a such a large technical team to align on a technical design decisions.
Day to day I expanded my Elixir skills a ton and enjoyed getting new or improved production experience with a bunch of tools:
- Developer Tooling: asdf, CircleCI, Docker, VSCode
- System Observability: DataDog, Splunk
- Frontend: NodeJS, Jest, Phoenix LiveView
- Elixir: bypass, credo, dialyzer, ex_doc, ex_machina, faker, floki, mix_test_watch, mox, oban
Summer Learning Plans
The basic plan is to take off all of July and August. I’ll be going down the shore for a week or so in July but the expectation is I’ll spend the rest of the time working on some personal projects and catching up on some learning paths. Some specific goals include:
- Finish a deployable version my open source LiveView retrospective tool, RetroTaxi.
- Continue to publish educational material under my ElixirFocus brand, formally Phoenix by Example. Ideally working towards some kind of small educational product.
- Get more familiar with event source / CQRQ programming patterns Hoping to land an Elixir project in this style in the fall.
- Read and work through a Rust/WebAssembly course/book; mostly for curiosity alongside my goal of learning a new programming language each year.
Having the time off, I’m also down for more coffee chats. If you want to grab some time, check out my calendar.