Senior Embedded Engineer Software at Canopy

We are redirecting you to the source. If you are not redirected in 3 seconds, please click here.

Senior Embedded Engineer Software at Canopy. As a Senior Embedded Engineer, you will be responsible for designing, developing, and maintaining software and firmware that run directly on devices, such as embedded systems, IoT devices, or mobile platforms. You will work closely with cross-functional teams, including hardware engineers, firmware developers, and product managers, to deliver robust and efficient solutions. Your expertise in software development and device-specific optimization will be essential in creating high-quality software that meets stringent performance and resource constraints.. Responsibilities: . . Design and develop software and firmware that run directly on devices, focusing on security, performance, efficiency, and reliability.. . Collaborate with hardware engineers and firmware developers to define software requirements and ensure seamless integration with device capabilities.. . Write clean, efficient, and well-documented code, following best practices and coding standards.. . Optimize software for specific device platforms, considering factors such as memory usage, power consumption, and processing capabilities.. . Conduct thorough testing and debugging of software on devices, identifying and resolving any issues or performance bottlenecks.. . Collaborate with cross-functional teams to gather and analyze requirements, propose technical solutions, and estimate project timelines.. . Stay up to date with the latest trends, tools, and techniques in software development for embedded systems and mobile platforms.. . Ensure best security practices are followed throughout the software lifecycle.. . Ensure compliance with software development methodologies, version control, and documentation standards.. . Participate in code reviews to maintain code quality, share knowledge, and promote best practices within the team.. . Provide technical support and guidance to junior team members, fostering their professional growth.. . . Bachelor's or master's degree in Computer Science, Software Engineering, or a related field.. . 5+ years’ proven experience as a Software Engineer, with a focus on developing software for embedded systems, IoT devices, or mobile platforms.. . Strong proficiency in programming languages such as C/C++, Java, or Python, with experience in low-level programming for resource-constrained environments.. . Solid understanding of software development principles, including data structures, algorithms, and object-oriented design.. . Proven experience with device-specific optimization techniques and performance profiling tools.. . Proven experience with security-by-design, security audits and reviews, threat modeling, and mitigation of common security risks. . . Familiarity with embedded systems development, including hardware interfaces, device drivers, and real-time operating systems.. . Knowledge of mobile platform development, such as Android or iOS, and associated frameworks and tools.. . Strong problem-solving and debugging skills, with the ability to analyze complex issues and provide effective solutions.. . Excellent collaboration and communication skills, with the ability to work effectively in cross-functional teams.. . Self-motivated and detail-oriented, with a passion for delivering high-quality software.. . Preferred Qualifications:. Reside within the Detroit, Michigan area or nearby, with the ability to work in a hybrid environment and regularly commute to our Detroit office as needed.. Company Location: United States.