Moving to an Established Company
Another Update on My Job Life
The PhD is almost finished—just a couple of months left, and I’m out. The thesis is done; now I’m just waiting for the discussion day.
I quit working for the startup I mentioned in the previous post and started looking for new opportunities. My goal was to work full-time with Elixir, so I began applying for a couple of positions. The interviews weren’t too bad overall, but after a rejection, I realized I lacked real-world experience in the Elixir ecosystem.
I’m confident in Elixir and OTP itself, but real-world projects are a different beast. Knowing the ecosystem is just as important as knowing the language. Besides Phoenix and LiveView —- the basics -— when asked, “What would you use for this project?” I completely blanked and just said, “just Phoenix and Postgres”. Yeah they were looking for a bit more.
So, I decided to build a big project using LiveView, Ash, Oban, Cachex, Broadway, and a few other libraries. Next time, I’ll be able to say, “I’ve used this and that to implement these features.” I might also try LiveSvelte since I have experience with SvelteKit.
Finally, an Elixir Job
During the same period, a company reached out to me out of nowhere looking for an Elixir developer. They asked me to do a live coding interview.
I wasn’t too excited… I wanted a job at one of the companies I had applied to. But then I thought, why not? If I got in, I’d finally get to work on a big Elixir project and learn.
Fast forward a few weeks, and I’m now working there part-time while I wait to finish my PhD.
Already in the first few weeks, I hit my head against Postgres a lot. It has always been my go-to database, but I never went beyond the basics. Now, I’m finally applying everything I’ve learned. (By the way, I highly recommend the Mastering Postgres course.)
The project I’m working on is their main product, and the codebase is huge. The team lead is serious about best practices and testing–even more than I am. So instead of dealing with a chaotic mess, I landed in a well-structured, well-tested codebase.
I’m already learning a ton, and I’m happy with how things are going. I want to keep improving and gain more experience, and finally develop my own project I’ve been thinking about for a while (yes it’s that gacha game system stuff I already talked about). I’ll share more details in a future post.