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.
As a Senior Node.js Software Engineer you will be responsible for implementing, designing and extending RESTful APIs using Node.js for the Control4 Smart Home Operating System. The application, called broker, is a key software component allowing other system components (Remote Controllers, Touch Panels, Mobile and Web Applications) to communicate with the OS.
Responsibilities
- Partner with development and product management to iteratively design and discover functional, architectural, and quality requirements
- Design and implement features for the Node.js application embedded with the Smart Home Operating System
- Work within the team to improve our tooling
- Be an owner – help the team raise the bar for excellence by identifying gaps and filling them in as you see opportunities to help meet commitments
- Obsess over the customer experience in everything you do for the team
- Challenge existing processes when anecdote and metrics differ
Required Qualifications
- Bachelor’s degree in Electrical engineering or Computer science
- 5+ years working with Node.js/ES 6
- Experience with Git, Express, Promise-based asynchronous patterns
- Experience working in an Agile environment
- Experience with data consumption from RESTful APIs
- Fluent in English
Preferred Qualifications
- Experience with Continuous Integration/Continuous Deployments (CI/CD) utilizing Code Pipeline
- Experience with Mocha/Chai, Joi, Socket.io
- Developing for embedded platforms
- Passion for understanding the interactions within complex systems