Core API Team Lead - remote

Batchservice
Posted 3 years ago
Core Values: We are….Customer Obsessed, determined to have ultimate success, curious and innovative, taking extreme ownership, leading with integrity

Vision:  We design, build &provide products &services that impact lives.

Job Summary:

We are looking for a brilliant NodeJS/ExpressJS/TypeScript developer with solid team management experience. You will lead arguably the most critical software development team in a fast-growing data-centric software company. You will work closely with the team’s architect to design and develop high performance, highly available REST and GraphQL APIs that will deliver data to our suite of web and mobile apps. You will report directly to the Chief Data Officer, a veteran API developer.

Supervisory Responsibility:

You will lead a team of software developers and QA engineers. You will manage your team’s Jira board with the help of project manager. You will participate in the hiring of new team members.

Duties and Responsibilities:

Software Development: 50% of your time will be spent on software development tasks. You will tackle the team's most difficult development tasks and diagnose the most complex production issues. The remainder of your time will be distributed across the tasks below.

Automated Test Scripts: You will write automated test scripts for all of your code. You will work with the QA manager to determine optimal code coverage. You will work with your team to ensure that regression tests can be easily run at any time for any reason.

Code Reviews: You will review all PRs raised by your team members. You will be responsible for ensuring that the code satisfies the documented requirements, includes the necessary automated tests and follows our documented coding standards and best practices.

Agile Project Management: You will work with a project manager to manage the API team’s Jira board and lead the Jira ceremonies (daily standup, retrospective, backlog refinement and sprint planning). Release notes will be published by the PM.

Detailed Design: Product requirements and high-level design documents will be provided by the CIO (product owner) and the team’s architect. You will be responsible for the detailed design documents that break the work down into modules, services, data models, etc.

API Support: API issues will be reported manually and automatically (via alerts) to a series of Slack channels. You will monitor these channels and create Jira tickets to diagnose and fix these issues. You will ensure that affected API consumers are informed regularly as to the status of the open issues.

API Documentation: You will be responsible for keeping the API documentation (used by the company’s app development teams) up to date. You can delegate these tasks when appropriate but the API documentation will ultimately be your responsibility.

Team Coordination: The API consumers (apps) depend on the API. The API depends on the data provided by data engineering. You will coordinate with the app and data engineering team leads to ensure that nothing breaks our data pipeline. Our API is versioned to make this process easier but close coordination with other teams is required to keep the version release process seamless.

Hiring: You will help write the job descriptions for open positions and you will participate in the interviewing and candidate review process.

Onboarding and Mentoring: You will be responsible for getting new hires up to speed and ensuring that they continue to adapt and grow their skillset to meet the team’s changing needs. You will work with the CIO and team architect to keep the onboarding documentation up to date.

Skills and Qualifications:

Exceptional analytical and problem-solving skills
Self-starter with strong self-management skills
Strong team leader: 2+ years management experience required
REST and GraphQL APIs: 3+ years required.
ExpressJS or Fastify: 2+ years required
Advanced TypeScript: 2+ years required
NodeJS: 2+ years required
Node Streams: 1+ years desired
AWS High-Availability Clusters: 1+ years desired
MongoDB: 2+ years desired
Search Engines (ES or Solr): 2+ years desired
Big Data: 1+ years experience querying datasets with hundreds of millions of rows desired
Mocha/Chai: 1+ years desired
Jira: 1+ years required
Confluence: 1+ years desired
Bitbucket or GitHub: 1+ years required

Compensation:

Salary not a constraint for the right candidate.