Our client develops and manufactures 2D/3D inspection and metrology equipment for the semiconductor industry. Their products are used worldwide by industry market leaders.
Role and Responsibilities:
The candidate is a dynamic, self-starter motivated by advanced problem solving. He/she will work with specialists in the field of software engineering, optics, electromechanics, robotics, databases, artificial intelligence and computer vision.
We are looking for an experienced professional with strong technical knowledge and experience in software development, software solution design architecture and software engineering. The candidate will work closely with the CTO, EVP and the software engineering team.
The candidate will contribute to the development of new features for the various system components. He/she will propose, design, manage and migrate the existing solution architecture to an appropriate software solution platform that meets current state-of-the-art technologies. He/she redesigns the application to a more user-friendly UI/UX model that meets customer expectations.
The candidate will have the opportunity to use and enhance their knowledge of the following technologies:
– Computer vision/machine vision/image processing/deep learning
– AI-based technology
Based on abilities and interests, primary responsibilities will include:
– Work closely with the CTO and EVP to interpret and translate requirements into a technology solution, with supported effort and staffing plans. The technology solution must be differentiated, competitive and leverage optimal structure and cost.
– Generate software requirements, develop specifications, write test plans.
– Design new and enhance existing software GUI.
– Lead software team to design, plan and develop modular solutions that can be replicated and scaled, and research replication and scaling opportunities for solutions under development.
– Implement solutions in C/C++ and in the Windows environment.
– Perform code review
– Debug, test and resolve software issues at the module and system level.
– Integrate and test the software in the target environment, i.e., applied to various system hardware.
– Manage the software team and projects
– Understand hardware performance, including electrical, optical and mechanical components, and optimize the performance of our solution.
– Communicate technical concepts clearly and effectively, both verbally and in writing.
– Produce documentation used in the solution proposal, detailed design and use of the solution.
– Apply software engineering best practices within the agile process established for the project. Contribute to the continuous improvement of these processes.
– Other duties as required and requested by management.
Required Skills and Experience:
– 5+ years of similar work experience.
– Bachelor’s degree or higher in computer science, software engineering or related fields.
– Excellent knowledge of software engineering, computer programming, systems architecture and related fields.
– 3+ years of hands-on experience in software design, development, implementation and testing in a Windows environment.
– Excellent knowledge and proficiency in programming languages such as C/C++, Python, mathematically driven software features, Windows dlls, services, API development, or similar software engineering systems level experience.
– Good working knowledge of data structures and design patterns, knowledge of multithreading and Windows API is a definite plus.
– Experience with issue tracking systems such as Phabricator, Redmine and/or Jira.
– Experience or strong interest in UI/UX.
– Experience with instrumentation control applications is a plus.
– Problem solving and optimization skills.
– Desire to work in a fast-paced, dynamic environment with high expectations.
– Skills and ability to work with cross-functional teams.
– Excellent team player and positive personality.
– Ability to communicate effectively and clearly.
– Proactive and results-oriented.
– Organized and thorough.
ID – 7852
Associée / Consultante sénior