Sr. Embedded Software Engineer (Cymer)
Contract 12-18 months 40 hours weekly
100% Contract Opportunity ONLY
Develops real-time embedded control system software. The role will include all aspects of the product development lifecycle – planning, requirements, design, code, test and maintenance.
DUTIES AND RESPONSIBILITIES:
- Work with Algorithms and Systems engineers to understand complex algorithm and system level requirements and translate these to clear concise and coherent software requirements.
- Generate software requirements, design documents, interface control documents and unit test plans.
- Maintain and develop embedded control system software application software written in C and C++
- Work with complex hardware interfaces in a real-time environment.
- Develop and perform unit testing of real-time embedded or application software.
- Translate, statistically analyze data, and effectively report problems through written and/or graphical formats.
- Use MS Word, Excel, PowerPoint, and electronic e-mail systems.
- Follow a Software Development Process that includes elements of planning, estimation, gathering and analyzing requirements, developing concepts and designs, implementation, developing and executing test plans’ and engaging in work product reviews.
- Perform other duties as assigned.
Bachelor’s Degree in Computer Science or Computer Engineering preferred. Minimum of a High School diploma or GED required.
- Minimum of five (5) years of experience is required.
- Experience in C/C++/ programming.
- Experience developing embedded software for VxWorks RTOS.
- Excellent written and verbal communication skills.
- Knowledge of software engineering processes, including Software configuration management and the ability to read and create appropriate project documentation.
- Knowledge of real time operating systems, control system theory, embedded software design, real time system interactions in an embedded environment.
- Knowledge of microcontroller architectures and principles of operation.
- Knowledge and ability to work with oscilloscopes, and signal generators.
Must have knowledge and intermediate experience in at least 3 or more of the following:
- Embedded microprocessor development environments.
- Serial communications (SPI, RS422, RS232, etc.).
- I2C bus.
- PCIe device drivers.
- Object Oriented Design with UML.
- Assembly language programming.
- Networking technologies such as TCP/IP, UDP, etc.
- Embedded Web Server design and implementation.
- CAN communication.
- Multi-core design.
- Semiconductor capital equipment.
- Multi-processor/distributed systems.
- Can observe and respond to people and situations and interact with others encountered in the course of work.
- Can learn and apply new information or skills.
- Must be able to read and interpret data, information, and documents.
- Strong customer focus and commitment to customer satisfaction through prioritization, quality, efficiency and professionalism.
- Ability to complete assignments with attention to detail and high degree of accuracy.
- Proven ability to perform effectively in a demanding environment with changing workloads and deadlines.
- Result driven-demonstrate ownership and accountability.
- Identifies bottlenecks and drives improvements.
- Work independently or as part of a team and follow through on assignments with minimal supervision.
- Demonstrate open, clear, concise and professional communication.
- Ability to establish and maintain cooperative working relationships with manager, co-workers and customer.
- Work according to a strict set of procedures within the provided timelines.
Job Status: Contract/Temporary