Software Design Engineer
Software Design Engineer
Contract 12-18 Months, M-F 40 hours weekly
Possibility to transition to Client after contract assignment
You will work in a team of highly skilled software engineers responsible for developing software that enables the ever-increasing miniaturization of semiconductor technology. In order to provide the most value to the customer as early as possible, the team will use Agile methodology to develop the software using C and/or C++. You will create architecture and designs that are modular, scalable, robust and meet customer requirements. As part of continuous integration, the team will perform unit testing and on target testing to ensure the software meets the high quality standards our customers expect.
You will also participate in continuous process improvement activities aimed at ensuring the processes and tools used throughout software development lifecycle are increasing the team’s ability to develop high quality software in the most efficient manner.
Undergraduate degree in Computer or Electrical Engineering or Computer Science, or equivalent experience.
- Minimum of ten years of experience in C and/or C++.
- Experience working on Linux and/or Solaris platforms.
- Extensive experience in embedded software development.
- Ability to decompose functional requirements into software architecture and design.
- Strong software development skills.
- Ability to debug complex issues and find root cause on your own.
- Creative approach to problem solving.
- Excellent communication skills.
- Ability to work in a dynamic, customer focused and multidisciplinary environment.
- Ability to work independently and in a team.
- 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.
- 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 co-workers and customer.
- Work according to a strict set of procedures within the provided timelines.