We are looking for passionate individuals who are committed not just to personal growth but are passionate about solving some of the world s toughest challenges. Opportunities exist for working across the various locations and across functions that the Company is present in. Continuing education is valued. We prize extreme ownership and tenacity above all other things. Finally, we believe we can t build a new future for the planet without first building a diverse and inclusive team so we hire the best candidates we can based on an evaluation of their potential, not just their experience.
Role: System Architect
Experience 15 to 20 years Responsibilities
Architect and Lead IoT Solutions: Design and implement scalable, resilient IoT platforms and applications, encompassing cloud computing, firmware, and database architecture.
Technical Ownership: Act as the primary technical owner, providing guidance on new technologies, designs, and implementations across teams.
Hands-on Development: Utilize expertise in Java, Azure services, modern UI frameworks (e.g., Angular, React), mobile development, and IoT technologies to build and enhance software solutions.
End-to-end System Design: Oversee the integration of interconnected system components, ensuring optimized performance and scalability.
Data Management: Design and implement application persistence layers using SQL, NoSQL, and schema development for advanced data handling.
Testing and Automation: Develop and drive testing strategies, leveraging tools like JUnit, Spock, and Selenium for unit, integration, and UI testing in automation pipelines.
Cross-Team Collaboration: Lead distributed teams, facilitating collaboration to align technical solutions with business objectives while prioritizing tasks effectively.
Adapt to Emerging Trends: Stay updated with advancements in IoT, big data, machine learning, and BMS protocols like Haystack to incorporate cutting-edge solutions.
Docker and DevOps Expertise: Manage deployment in containerized environments, streamlining DevOps practices for seamless application lifecycle management.
Business-Driven Solutions: Translate complex business requirements into elegant technical solutions, ensuring alignment with organizational goals and delivering impactful results
Required Knowledge/Skills, Education, and Experience
Bachelor s Degree or higher in Computer Science, Software Engineering, or closely related technical discipline.
15+ years of experience in IoT platform, application architecture, database architecture, firmware and Cloud computing and contributing to, the design of complex technical architectures in resilient and high-scalability environments.
E15+ years in technology: hands-on in Java, Azure services, Azure Databases, Azure DevOps, Development and testing of modern UI and web application frameworks (e.g., Angular, React, etc.), Mobile application development (e.g., Android, Apache Cordova, etc.), NodeJS implementation, firmware, IoT technologies.
12+ years in end-to-end design and reviews across various interconnected system components.
12+ years in application persistence layers and related design choices (e.g., SQL, NoSQL, etc.
10+ years of working knowledge of machine learning and big data platforms, unit testing, integration testing, and UI testing frameworks and methodologies (e.g., JUnit, Spock, Jasmine, Selenium, etc.) as part of software testing automation
Experience working in a Docker containerized environment.
Experience being the POC for the overall technical owner for implementation across teams and the lead for new tech and new designs within a platform.
Knowledge of Schema development and exposure to the latest BMS protocols and schema - Haystack.
Preferred experience
Previous work exposure in IoT industry / embedded / M2M industry (i.e. home automation, business automation, health, asset tracking, smart utilities, etc.)
Experience with distributed teams is highly desired.
Ability to technically drive solutions across various teams. Must be able to seek input when required, prioritize and drive results.
Knowledge of implementing maintainable and well-tested software and relevant support technologies (e.g., Java, NodeJS, Angular, JUnit, Spock, Git, SQL/NoSQL databases, build pipeline automation, etc.)
Ability to architect resilient and high-scalability applications.
Ability to learn quickly and adapt to change in a fast-moving environment.
Ability to translate complex business requirements into simple, elegant technical solutions for development engineers.
Highly collaborative approach to technical delivery from the standpoint of business domain and requirements.