
Software Engineering Manager
- Austin, TX
- Permanent
- Full-time
- Software Architecture and Coding - Drive the technical architecture and design of software components for new hardware products in development making key decisions on platform integration, system-level design, and scalability, ensuring new products meet both functional and performance goals. Lead by example in writing clean, efficient, and maintainable code across the full stack.
- Requirements and Design - Act as a software point of contact for NPI projects, collaborating closely with hardware, firmware, systems engineering, QA, manufacturing, and product management translating them into detailed technical specifications and design documents.
- Integration - Oversee the integration of embedded software, cloud services and third-party services, ensuring seamless interoperability and system performance.
- Certification - Ensure software meets industry standards and regulatory requirements. Coordinate with certification bodies and manage documentation for compliance.
- Testing - Drive the implementation of automated and manual testing strategies to ensure software quality, reliability, and performance.
- Feature Definition - Work closely with cross-functional teams to define and prioritize new features, ensuring alignment with business goals balancing feasibility with innovation under tight NPI schedules.
- Customer Support - Provide technical support and guidance to resolve customer issues. Analyse feedback to inform future development and improve user experience.
- Verify and Validate - Lead verification and validation efforts to confirm that software meets all functional and non-functional requirements.
- Process Improvement - Champion automation, use of AI, continuous integration and Continuous Delivery/Deployment (CI/CD), and agile development practices to streamline workflows and enhance team productivity.
- Manage Talent - Mentor and develop team members through regular feedback, performance reviews, and career development planning. Foster a culture of continuous learning and innovation.
- 10+ years of experience designing, developing and maintaining production cloud services (Azure/AWS)
- 10+ years of expertise developing C# .NET services.
- 5+ Years of experience leading and managing a software development team, providing technical leadership, mentoring and guidance to direct reports.
- Familiar with client design and API development, including API gateway cloud technologies
- Experience with implementing and making use of message queuing (RabbitMQ, Service Bus, SQS) and message streaming (Kafka, EventHub, Kinesis) in a production system
- Familiarity with cloud relational (SQL Server, Postgres, Aurora) and non-relational (MongoDB, Cosmos, DynamoDB) database technologies
- Expertise optimizing cloud platform and services for low cost, high throughput, and low processing time.
- Experience developing IoT solutions: software, services, devices
- Designing, developing, and maintaining large production services and systems on Azure or AWS
- Experience designing high throughput and high processing volume cloud architectures
- Expertise deploying and running services on Kubernetes
- Experience working with globally distributed teams
- Creative individuals who are self-motivated and able to work with little supervision, who consistently take the initiative to get things done, do things before being asked by others or forced to by events
- Understanding of software development life cycles
- Experience with scaled Agile development practices
- Knowledge of software configuration management and change management practices
- Strong technical and non-technical communication skills
- The opportunity to be an engineering partner on products that individuals interact with on a daily basis that impacts their comfort, safety, and security.
- Be a part of a team that is growing and regularly investing in research and development to continue to strengthen the products we offer.