Senior Backend Engineer
Amino
What You'll Do
- Maintain, improve upon, and build the existing codebase written in Java.
- Write unit and integration tests for existing and new features to ensure robustness and reliability.
- Design, implement, and maintain IaC using tools like Terraform, Ansible, and CloudFormation.
- Automate the provisioning of servers, containers, and services using tools like Docker, Kubernetes, Jenkins, ArgoCD, and GitHub Actions.
- Review and critique code to identify potential issues, enforce best practices, and ensure code quality.
- Debug and resolve issues in production systems, ensuring uptime and reliability.
- Implement robust security measures and ensure data protection.
- Work collaboratively with developers, product managers, and other stakeholders to deliver scalable solutions.
- Contribute to the design and maintenance of distributed systems and intuitive user interfaces.
- Apply knowledge of event-driven architectures to build responsive and scalable systems.
- Implement and manage monitoring systems using tools like Datadog or New Relic.
What We're Searching For
- 4+ years as a professional software engineer.
- BS degree in Computer Science or a related field is preferred but not required.
- Proficiency in Java with additional experience in Golang being a plus.
- Experience managing AWS and/or GCP infrastructure.
- Proficiency with SQL databases (e.g., MySQL, Postgres) and familiarity with NoSQL databases (e.g., Cassandra, Redis, DynamoDB).
- Experience with tools such as Ansible, Terraform, Docker, Kubernetes, Istio, and other DevOps-related tools.
- Previous experience working with microservices infrastructure.
- Hands-on experience with CI/CD tools such as Jenkins and GitHub Actions.
- A passion for implementing best practices and advocating for smart automation.
- Experience with monitoring tools such as Datadog or New Relic.
- Proven ability to work on distributed systems and large-scale architectures.
- Understanding of event-driven design and implementation.
- Excellent communication skills and the ability to prioritize multiple projects independently.