Job Summary:As a Software Engineer, you will be part of a squad following the Agile Software Development process. You will contribute to the success of the team by supporting the end-to-end design, development, validation, and deployment of the world's leading internet-connected (IoT) lighting and sensing systems. You will work on a variety of projects, some of which will focus on the development of front-end modules, while others will involve back-end development. To be successful, you will collaborate with product management and architects to plan and execute the evolution of our customer-centric software systems. Throughout these efforts, you will consistently apply critical thinking and creative problem-solving skills to balance the immediate needs of our customers with their long-term goals, ultimately transforming how users experience lighting.Key Tasks & Responsibilities (Essential Functions)Develop system designs, specifications, implementation details and code for new features connecting cloud and mobile components.Actively participate in software design decision making to create new innovative IoT lighting solutions and customer experiences.Participate in peer code reviews and provide guidance to other team members as the subject matter expert.Design, develop, and maintain software applications using C#, JavaScript, and React.Hand on experience with leading, coaching and monitoring other developersCollaborate with other team members, such as Product Owners, Squad leads, QA engineers, and other developers, to ensure a shared understanding of requirements and to create software that meets both business and technical expectations.Help promote the values and principles of Agile, such as collaboration, flexibility, and delivering value.Flexible and adaptable to changes in requirements or priorities, as Scrum values iterative and incremental delivery. You must be willing to adjust the product based on evolving needs.Manage and address any technical debt accrued during development to ensure long-term product qualityAdhere to coding standards, version control practices, and development methodologies that align with Agile and Scrum principlesSkills and Minimum Experience RequiredBachelor's Degree in Computer Science, Computer Engineering, MIS or equivalent5+ Experience with Full Stack Software Design and DevelopmentProficient using JavaScript and React to develop Front-End ComponentsWorking knowledge of .NET (C#), C#, C++, JavaScript, HTML and PythonFamiliar with WiX Toolset, Selenium, Xunit, Nunit, git, SQL,, NuGet, Grunt, Azure, React and Extensive knowledge of debugging practicesProficient knowledge of software engineering best practicesExcellent verbal and written communication skillsPreferred Skills and ExperienceMaster's Degree in Computer Science, Computer Engineering, MIS, or equivalent.5-8 years of software development experience in an Agile Scrum environment.Hands-on experience with at least 3-4 of the following programming languages and tools: C#, C++, JavaScript, HTML, Python, WiX Toolset, Selenium, Xunit, Nunit, Git, SQL,, NuGet, Grunt, Azure, React, and Proven experience with back-end software design and development.Experience with modern data stores and SQL.1-2 years of experience with hardware/software interaction through TCP/UDP/Bluetooth communications.Proficiency in using Microsoft Azure DevOps.Strong understanding of Scrum methodologies.Experience with Test-Driven Development (TDD).Experience with Xamarin/MAUI.