Sr. Embedded Software Engineer
Please No C2C or Sponsorship Sr. Software Engineer Embedded:This position is responsible for a portion of a total engineering project related to designing, developing, testing, and maintaining software systems and applications. We're looking for someone who knows their way around embedded systems and who has knowledge of Linux and real-time operating systems. If you understand networking, cyber-security, bootloaders, kernels, and the Qt application framework, that's a big plus! Bonus points if you've configured a custom Linux distro using Yocto. We value diversity in the workplace and encourage women, minorities, and veterans to apply!Type: Direct HireLocation: Remote/onsite as neededJOB DUTIES AND RESPONSIBILITIES:Independently applies knowledge of software engineering principles to design, code, troubleshoot, and debug software applications.Develops new and varied solutions to software problems within standards and contributes to the value of product design by studying competitive products, customer practices, and identifying customer needs.Analyzes software issues to determine suitable solutions to prototypes, production, or field failures by establishing and coordinating design reviews with peers and project leads. Responsible for organizing data and preparing documentation for assigned reviews.Responsible for thoroughly testing their software, coordinating others on software verification tests, and testing peer software when necessary.Responsible for development and completion of all software documentation, working collaboratively with cross-functional teams. Ensures documentation is complete, accurate, and properly maintained, recording new ideas in the form of flow charts, sequence diagrams, etc. to convey concepts.May direct the work of drafters, technicians, and others who assist in small projects.QUALIFICATIONS:Knowledge, Skills, and AbilitiesAbility to develop software requirements and apply design methodologies.Excellent written/oral communication skills with a proven ability to work both independently and collaboratively within a team environment while following established procedures.Strong understanding of the software development lifecycle.Understanding of software configuration management tools.Education and ExperienceBachelor’s degree or relevant experience, plus, at least five years of relevant software engineering experience of increasing complexity.Software development experience using C/C++, Python, TypeScript, and other programming languages.Experience working with Linux or a real-time operating system (RTOS).Familiarity with UI application frameworks and/or cloud platforms.Experience delivering software using Agile development processes.DisclaimerA background check and screen for the illegal use of drugs is required.