Embedded Software Engineer
The Embedded Software Engineer designs and implements the embedded software that is an integral part of measurement and control systems in close collaboration with engineers in other disciplines, and/or located in other engineering centers. Evaluates methods, technology and development tools to be used for the project. Keeps updated on software technology and specifically on technology within the embedded domain. Will with increasing experience and seniority supervise and mentor younger engineers, and participate in activities to define and implement frameworks and design practices, as well as knowledge sharing activities in the local and global community.
– Design & implement embedded software for measurement and control systems incorporating multiple processors using Real Time Operating Systems.
– Design of high speed, hard Real Time data acquisition & logging systems.
– Testing & debugging hardware / software issues.
– Implementation of DSP algorithms.
– Gathering and analysis of requirements and estimation.
– Coordinating software development with other disciplines within own projects, and with other engineering projects.
– Design testing procedures and coordinate with others to perform tests.
– Conduct tests, document test results and develop presentation.
– Support manufacturing and field organizations on design and testing related issues.
– Produce analyses, mathematical models, designs, and draw design conclusions based on those.
– Provide timely corrective actions on all assigned defects and issues.
– Conduct and/or participate in multi-disciplinary technical reviews. Ensure commitments are agreed, reviewed and met.
– Contribute to design standards and support design re-use (best practices, etc.).
– Create and maintain product documentation.
– Provide support and prepare technical documentation to field and/or customers through InTouch in a timely fashion.
– Share expertise via Eureka and SIGs and expand his/her informal network throughout the organization: field, research, engineering, manufacturing, other domains.
– May author/co-author technical reports, papers, articles, patents and presentations.
– BS in Sciences or Engineering with software experience or education.
– Thorough knowledge of C++ and/or C & Assembly languages.
– Experience in using various hardware & software tools used in development & debugging; like emulator, simulator, modeling, scopes, logics analyzer, etc.
– Understanding of Microprocessor & DSP based hardware design, ability to read and understand schematics and manufacturer datasheets of components.
– Thorough understanding of programmable peripherals & serial communications.
– Experience in development of fault tolerant systems.
– Experience with development of basic DSP algorithms and implementation.
– Knowledge of Real Time Operating System, Matlab, Object Oriented Design and Embedded C++. – Quality management
– Agile and iterative development