Software/Prototype/POC Engineer

Infotree Service Verified

Job Description

Company Description

Semicondutor

Job Description

Description:

Candidate will be responsible for rapid prototype and proof of concepts (POC) of software designing concepts that prior to integration in a larger software stack used in manufacturing; expected to participate in all phases of software development lifecycle of the prototypes and POCs; expected to develop both the prototypes/POC and supporting code/unit tests to demonstrate the key concepts being explored; engage with members of the team to understand the boundary conditions/key attributes of the prototype/POC and the appropriate performance metrics associated with the Prototype/POC. Partner with cross functional team to understand implementation constraints; Research design implementation options and propose implementation details. After each prototype/POC summarize the findings and review with cross functional teams. As needed, propose a design iteration to optimize the implementation. Implement and test different Middleware communication methodologies (RabbitMQ, gRPC, others) to characterize their overall performance/capability within the larger software stack. Other communication/integration touch-point involve the interaction between higher level software and lower level software which includes interaction with lower level device drivers and FPGA implementations.
Daily Responsibilities/ Required Skills not limited to the following:
• Architect, develop, test, and document code and results for each Prototype/POC iteration.
• Develop, test and analyze results of Prototypes/POC in the middleware and lower level software.
• Optimize the code as needed and document performance trade-off consideration for final integration.
• Implement both Unit Test and System Level Testing Strategies to provide insight into the architectural and developmental model for the software concepts.
• 6+ years of Software experience in C/C++/C#.
• Strong understanding of Object-Oriented Principles;
• Able to leverage language specific methodologies like Template (C++),
• Public/Private Headers; Familiar software interfaces practices appropriate for the C++/C#.
• Experience with Standard Library and Boost.
• Experience with Unit Test Frameworks (Microsoft, GTest/Gmock);
• Familiar with CMAKE and able to generate a C++ project with public/private .h settings, cross project linking;
• Experience with standard dev tools: revision control (GIT), issue tracking, profilers, debugging, Visual Studio, 3rd party build infrastructures
Additional Desired Skills:
Experience with gRPC/Protobuf/RabbitMQ highly desired; Understanding of 3rd party tools (CMAKE, Chocolatey, DOCKER);
Degree Required: B.S or M.S in Computer Science, or Electrical Engineering, or Computer Engineering or equivalent; BS + 6 yrs. of experience, or MS + 4 years.