SW Engineer for the AA team
על התפקיד
We are seeking a Software Engineer to join our team and contribute to the development and maintenance of our proprietary, in-house software platform. The ideal candidate will have strong Python skills and experience with computer vision, data infrastructure, and user interface development.
📍Rosh HaAyin
Responsibilities:
• Computer Vision (CV) Algorithm Development: Implement and maintain CV algorithms for various tasks, including TV/BV calibration, referencing positions (chuck, nests, dispenser, etc.), and dispensing tip calibration.
• SW Platform Development & Maintenance: Work on the core software platform, including zaber triggers, data connection infrastructure, and loop tooling. This includes implementing motion control drivers and developing tools for data collection and comparison.
• Bug Fixing & Upgrades: Address and resolve issues within the platform. This includes fixing bugs related to mouse callbacks, operations, and the DAQ AI panel input. You’ll also be responsible for upgrading and improving existing functionalities.
• User Interface (GUI) Development: Enhance the platform’s graphical user interface, including updating frame threads for page indicators and feedback frames.
• Version Control & Integration: Manage code branches and integrate changes from different development branches (e.g., merging Tpl1 and ATE_DEV branches with the main branch).
מה צריך?
• Proficient in Python: Extensive experience in Python programming is a must.
• Computer Vision: Strong understanding of computer vision algorithms and libraries.
• Problem-Solving: Excellent debugging and problem-solving skills to address complex issues.
• GUI framework – proficiency with PySide6 and Aapplications
• Data infrastructure – experience with SQL (specifically sqlite3) and databases, handling structured/unstructured data efficiently
• Testing and CI/CD – writing unit tests, integration tests and working with automated pipelines.
• Version control – strong Git skills, including branches strategies, pull requests, code reviews, etc..
• Packaging and deployment – experience in packaging python applications (specifically PyInstaller)
• optics background – knowledge of geometric transformations, calibrations, optical systems.
• Electronics/daq – understanding of signal acquisition and processing
• Performance optimizations – experience with multithreading
• Collaboration: Ability to work independently and as part of a team, managing multiple priorities and deadlines.
This role requires a dedicated individual who can efficiently tackle a variety of tasks, from low-level implementation to high-level platform improvements.