We are looking for top technologists to build new services within the Business Administration Tooling team. You will be working with highly motivated and extremely talented engineers on backend services with quality, performance and scale in mind at every step of the way. Our core belief is that the customers are our number one priority so we work hard to deliver value back to them with everything we do. We believe strongly in team ownership of systems, which includes defining the vision of the services to prioritization of projects.
- Contributing to all aspects of the services under the team’s ownership, which includes design, implementation, refactoring, automated testing, deployment, and uptime of the services.
- Helping other team members grow as engineers through code review, pairing, and mentoring.
- Improving internal team processes by keeping what’s working, throwing away what’s not.
- Collaborating on the vision of the services under the team’s ownership.
- Building the technology the right way: for us, this means simple, well-tested systems that gradually grow over time, and that provide plenty of insight into production performance.
- Engineers are expected to support systems they develop in production which involves on call duty. The actual periods and frequency varies by team.
- BS or MS degree in Computer Science / Engineering / or related experience
- 2-5 years of relevant experience
- Full-stack software development experience
- Ability to craft simple and elegant solutions to complex problems.
- Expertise in Node.JS and React web development
- Knowledge of OAuth 2.0 authorization framework
- Additional Experience in at least one of the following – GO, Java, Scala, PHP, C/C++, Rust, Perl, Ruby, SQL
- Very strong knowledge of how the Web works and how to make it efficient (HTTP, caching, page rendering, etc)
- Very strong knowledge of test design and test pyramid
- Experience building and designing highly scalable services, and RESTful API’s that power multiple consumers.
- Experience with SOA architecture working on distributed/high trafficked systems.
- Familiarity with at least one RDBMS
- Solid software development fundamentals (Data Structures, algorithms, problem solving, OO Design, and system architecture).
- Passionate about what you do and care deeply about the things you build.
- Able to clearly communicate to technical and non-technical audiences.
- Has a good understanding of continuous delivery, writing unit tests and automated testing.
- Docker and Kubernetes experience
- Experience with automated configuration tools like Puppet, Chef or Ansible
- Experience working in an agile environment