What does it take to become a senior software engineer for Elixir?

There are much longer answers but to me it mostly boils down to:

  • Produce readable code that other people can easily pick and maintain.
  • Use your tools the way they are meant to (e.g. abusing OTP just because you fell in love with the idea of Erlang/Elixir processes is a huge no-no).
  • Make boring code and don’t try to be too fancy.
  • Don’t get caught up on minor details or some perceived perfection. Never forget you are paid to solve problems, not to become academically excellent. If you stumble upon a problem that seems that it cannot be solved without making a little bit of “dirty” or “ugly” code, don’t lose your sleep over it. Solve the problem, make a note to maybe fix the ugliness one day, and move on.
  • Document your stuff in a terse and understandable manner. Being a good human-language writer is essential for a senior dev.
  • Go out of your way and ask “why are we building this?” and not just “what’s my next ticket to resolve?”. That way you can produce extra tooling that solves the bigger problem. Don’t be a wage lemming; take the initiative and actively seek what are your customers’ actual pain points, and try to cure them.

I’ve written more detailed thoughts here: Idiomatic, real-world Elixir resources?

14 Likes