Overview
Established in 2005 and based in Charlotte, North Carolina, Snap One is a manufacturer and exclusive source of A/V, security, control, networking, and remote management products for professional integrators. An industry leader in the pro-install channel, Snap One helps integrators build their businesses by providing a wide range of high-quality products, easily accessible through an intuitive website and backed by award-winning service and support. With a vast catalogue of today’s most popular brands, Snap One is the premier choice for professional installers across the globe. With 28 pro stores in the US, Snap One blends the benefits of ecommerce with the convenience of local stores. Additional information about Snap One and its products can be found at www.snapone.com.
The Associate Software Engineer will report to the Software Development Manager of Cloud Experiences. The individual will develop, update and test RESTful APIs using the latest best practices and tools including supporting libraries and frameworks, test automation, API management, and documentation, Continuous Integration/Continuous Deployment (CI/CD) pipelines, all in a world-class cloud IoT environment. The Associate Software Engineer will have a great opportunity to grow and requires a motivated self-starter as part of a global team who can manage working in a fast-paced environment and work on multiple projects simultaneously. The individual will work cross-functionally. A successful individual will demonstrate intellectual curiosity, accountability, attention to detail and business acumen.
Responsibilities
- Develop, update and test backend API’s in Java framework utilizing AWS cloud technologies to further facilitate home automation
- Build and maintain software in a DevOps environment, and mature the environment with the latest technologies
- Work with the team to iteratively design and discover functional, architectural and quality requirements
- Create and develop test plans for unit tests, automation tests, and manual tests for new and existing software promoting test results including error reporting
- Completes troubleshooting and communicates methods and outcomes
- Apply the defined excellent operational quality standards, such as scalability, performance, monitoring, error reporting, etc.
- Be an owner and uphold high standards of commitment, accountability, customer focus, and quality expected of the team
Required Qualifications:
- Bachelor’s degree with 2+years’ Java experience designing, implementing and supporting modern, enterprise-scale web applications; or 4+ years' Java experience designing, implementing and supporting modern, enterprise-scale web applications
- Experience in SDLC – Design and Implementation with Continuous Integration/Continuous Deployments (CI/CD) utilizing tools such as Code Pipeline and GitHub Actions
- Experience organizing development tasks in an Agile environment utilizing Jira and Confluence
Preferred Qualifications:
- Experience with AWS cloud components like lambda functions, EC2, Docker containerization with Kubernetes leveraging EKS, Fargate ECR/ECS, Kinesis, API Gateway, S3, IAM, Route53, ALB, Redis, and RDS
- Experience with Development technologies, tooling and protocols like Java Spring Boot, OAuth2, JMeter, GoLang
- Experience with “Infrastructure as code” and deployment tools like Terraform or GitHub Actions
- Database experience such as PostgreSQL, SQL Server, and AWS DynamoDB
- Experience utilizing monitoring tools such as Datadog, Splunk, New Relic, and AWS CloudWatch with SLIs, SLOs, and SLAs