5+ years of professional experience working with large codebases 5+ years of professional experience designing, implementing, deploying, and testing distributed systems Strong knowledge of data structures and algorithms Experience integrating databases (e.g. MySQL, MongoDB) Experience creating and extending database schemas Experience with application specific frameworks (e.g. SpringBoot, ASP.NET) Experience with integrating with cloud services (e.g. AWS, Azure) Experience with integration of logging, performance monitoring, and alerting systems Strong understanding of application tradeoffs when choosing different technologies or implementations Experience with containerization tools (Docker or Podman) (Preferred) Proficiency in 2 or more programming languages (e.g. Python, JS, Java, C++) (Preferred)