What the job involves
The main requirements, responsibilities and hiring steps.
Requirements
- 6+ years of experience delivering complex software systems and solving technical challenges
- Strong back-end experience and have used object-oriented tech stacks similar to ours (primarily Python and frameworks like Flask and/or FastAPI)
- We consider experience in other tech stacks (like Java and/or NodeJS) and frameworks (like Django) valuable
- You've been developing on one of the major cloud providers (AWS, GCP and/or Azure) and have worked on automated testing and deployment pipelines
- Experience in CI/CD pipelines such as Github Actions, CircleCI, Jenkins
- Experience with IaC practices and tools such as CloudFormation, Terraform, Puppet
- Proficiency and knowledge of different modern databases like e.g. Postgres and/or DynamoDB
- 6+ years of experience in web application development, with a strong focus on modern front-end technologies, specifically React
- Experience with state management tools (Redux, MobX, Zustand), build tools such as Webpack, and unit testing tools (Jest, React Testing Library)
- Familiarity with frameworks in the React ecosystem (Vite, Next.js, Gatsby, Remix) is an added advantage
- Ability to break down complex projects into components or milestones that can easily be picked up by other engineers
- Motivation to influence our engineering organization to level up the reliability and performance of the apps we ship
- Demonstrated collaboration with co-workers on cross-functional teams
- Experience building consumer facing applications and internal tools
Nice to have
- Strong back-end experience with Python, Flask/FastAPI
- Experience with cloud providers (AWS, GCP, Azure)
- Proficiency with modern front-end technologies (React)
- Experience in CI/CD pipelines
- Knowledge of various databases (Postgres, DynamoDB)
- Familiarity with state management tools (Redux, MobX, Zustand)
- Familiarity with frameworks in the React ecosystem (Vite, Next.js, Gatsby, Remix)
Day to day
- Be a key part of a team of developers in designing and building software systems with best practices in scalability, reliability, and security
- Collaborate with product managers, designers, and other stakeholders to understand business requirements and translate them into technical requirements
- Iterate quickly on all stages of automation, performance and tooling, including bringing new products to production
- Maintain and improve existing code bases, design and build features and functionality delivered on time and within scope
- Participation in code and design reviews, support with regular team meetings, and apply software development best practices
- Ensure code quality and maintainability by establishing and enforcing coding standards and best practices
Hiring process
- Background check
- Compliance with federal and local regulations
