- Product Management: The Engineer will work directly with the Team on setting priorities, creating and updating roadmaps, grooming the backlog, managing their own sprints, and developing detailed specifications for the team to execute against. This includes creating detailed specifications in cooperation with stakeholders.
- Architecture: The Engineer is responsible for ensuring the system is architected to scale gracefully, is designed for failure (fault tolerant) and can be easily expanded and extended to meet the company’s future needs.
- Customer Support/System Reliability: The Engineer is responsible for handling system outages and vetting bug reports. The Engineer will triage incoming issues, determine possible cause and work with the appropriate team member(s). The Engineer works to ensure that system outages are addressed in a way that the same issue is not likely to recur.
- Company Representative: The Engineer is responsible for representing the company in a professional and diligent way with 3rd party service providers, integration partners and contractors.
- Strong knowledge with server frameworks like Node.js, C#;
- Experience configuring cloud-management and deployment systems like AWS, Azure, Docker and Convox;
- Experience working with and configuring database systems like MongoDB and PostgreSQL;
- Experience architecting and building microservices;
- Experience building and architecting large systems efficiently to scale;
- Familiarity working with AI and ML tools like LEX and AWS NLP products;
- Experience managing and building systems that leverage data science, artificial intelligence, no-SQL database systems, extensive reliance on 3rd party APIs and multi-platform architectures (iOS, Android, web and mobile web);
- Ability to write, analyze, and debug SQL;
- Devops experience a plus, particularly Docker and Kubernetes; and
- Experience in structured development processes. Agile Scrum is preferred.