Senior Software Engineer

Cohu Inc

  • San Diego, CA
  • 30+ days ago
    Want to know if you’re a fit?
    Upload your resume and let our AI show you.

    Skills

    • ATE Testersunmatched
    • Application Frameworkunmatched
    • Atlassian JIRAunmatched
    • Automationunmatched
    • Automation Systemsunmatched
    • Busesunmatched
    • C Programming Languageunmatched
    • C++ Programming Languageunmatched
    • Change Managementunmatched
    • Coachingunmatched
    • Code Reviewsunmatched
    • Communication Skillsunmatched
    • Computer Engineeringunmatched
    • Computer Scienceunmatched
    • Computer Workstationsunmatched
    • Concurrencyunmatched
    • Continuous Deployment/Deliveryunmatched
    • Continuous Integrationunmatched
    • Corrective Actionunmatched
    • Cross-Functionalunmatched
    • Customer Escalationsunmatched
    • Customer Relationsunmatched
    • Customer Support/Serviceunmatched
    • Data Analysisunmatched
    • Debugging Skillsunmatched
    • Design Patterns Programming Methodologiesunmatched
    • Develop Methodologiesunmatched
    • Documentationunmatched
    • Electrical Engineeringunmatched
    • Electromechanical Engineeringunmatched
    • Electromechanical Systemsunmatched
    • Electromechanicsunmatched
    • Embedded Linuxunmatched
    • Embedded Systemsunmatched
    • Engineeringunmatched
    • Ethernetunmatched
    • Gitunmatched
    • Hardware Debuggingunmatched
    • Hardware Quality Assuranceunmatched
    • Hardware Simulationunmatched
    • Hardware-Software Integrationunmatched
    • I2Cunmatched
    • ISO (International Organization for Standardization)unmatched
    • Identify Issuesunmatched
    • Industrial Roboticsunmatched
    • Instrumentationunmatched
    • Interface Controllersunmatched
    • Jenkinsunmatched
    • Machine Toolunmatched
    • Manufacturingunmatched
    • Manufacturing Automationunmatched
    • Mechanical Testingunmatched
    • Medical Equipmentunmatched
    • Mentoringunmatched
    • Microcontrollerunmatched
    • Microsoft C# (C Sharp)unmatched
    • Microsoft Visual Studiounmatched
    • Microsoft Windows Operating Systemunmatched
    • Object Oriented Design (OOD)unmatched
    • On Site Supportunmatched
    • Performance Analysisunmatched
    • Peripheral Hardwareunmatched
    • Presentation/Verbal Skillsunmatched
    • Problem Solving Skillsunmatched
    • Product Engineeringunmatched
    • Product Lifecycleunmatched
    • Production Systemsunmatched
    • Python Programming/Scripting Languageunmatched
    • Qt GUI (Graphical User Interface) Toolkitunmatched
    • RS-232unmatched
    • RS-485unmatched
    • Realtime Operating Systemunmatched
    • Regression Testingunmatched
    • Reliability Engineeringunmatched
    • Root Cause Analysisunmatched
    • SEMI Equipment Communications Standard/Generic Equipment Model (SECS/GEM)unmatched
    • Safety Standardsunmatched
    • Scripting (Scripting Languages)unmatched
    • Semiconductor Manufacturingunmatched
    • Semiconductorsunmatched
    • Servomechanismunmatched
    • Simulationunmatched
    • Software Administrationunmatched
    • Software Designunmatched
    • Software Developmentunmatched
    • Software Engineeringunmatched
    • Source Code/Configuration Management (SCM)unmatched
    • System Architectureunmatched
    • System Testunmatched
    • System-on-a-Chip (SoC)unmatched
    • TCP/IP (Transmission Control Protocol/Internet Protocol)unmatched
    • Team Playerunmatched
    • Technical/Engineering Designunmatched
    • Test Automationunmatched
    • Test Plan/Scheduleunmatched
    • Test Suiteunmatched
    • USBunmatched
    • User Interface/Experience (UI/UX)unmatched
    • Windows Forms (WinForms)unmatched
    • Windows Presentation Foundation (WPF)unmatched
    • Writing Skillsunmatched

    Description

    Cohu is a global supplier of semiconductor test and automation equipment. In this role you will build and sustain software that controls complex electro-mechanical test handlers used in high-volume semiconductor manufacturing.

    Position Summary

    Design and develop proprietary application and framework software for control machines, automation systems, and complex electro-mechanical platforms. This role spans full lifecycle development-from architecture and design through integration, deployment, and customer support-focused on uptime, safety, and deterministic real-time behavior.

    Essential Functions / Responsibilities

    • Design, develop, test, and integrate machine control software using C++ and C# in a Visual Studio environment.
    • Develop real-time control logic for motion systems (motors, encoders, servo/stepper control), sensors, and digital/analog IO.
    • Drive system architecture, interface definitions, and software design reviews; establish patterns that scale across product variants.
    • Own customer escalation response: troubleshoot issues using logs, instrumentation, and on-equipment debugging; deliver corrective actions and prevention plans.
    • Partner with Manufacturing and Field Service to resolve production-line and installed-base issues, restore system uptime, and improve reliability.
    • Build verification strategies that push failure detection upstream (simulation, automated system tests, regression suites) and reduce re-occurrence.
    • Interface with customers and cross-functional teams (EE/ME/Test/Apps) to align requirements, integration plans, and release readiness.
    • Mentor engineers through code reviews, design feedback, and technical coaching.

    Required Qualifications

    • Bachelor's or Master's degree in Computer Engineering, Software Engineering, Computer Science, Electrical Engineering, or a related field.
    • 10+ years of professional software engineering experience, including substantial work on automation, machine control, or complex electro-mechanical systems.
    • Expert C/C++ skills with object-oriented design (OOD) and design patterns; ability to write maintainable, testable, production-quality code.
    • Strong experience developing on Windows using Visual Studio; familiarity with C# for tooling, diagnostics, or UI is preferred.
    • Hands-on experience with real-time systems, including deterministic sequencing, concurrency, timing constraints, and fault handling.
    • Proficiency with version control and collaborative development workflows (Git preferred): code reviews, branching strategies, and disciplined change management.
    • Demonstrated ability to troubleshoot and resolve field issues, including root-cause analysis and implementing corrective/preventive actions.
    • Strong written and verbal communication skills; comfortable presenting designs and status to technical and non-technical stakeholders.

    Relevant Domain Experience (Any of the Following)

    • Semiconductor equipment, test handlers, ATE integration, or factory automation environments.
    • Comparable experience in industrial automation, robotics, medical devices, or high-volume product engineering with electro-mechanical systems.

    Preferred / Additional Skills (Highly Beneficial for Test Handler Software)

    • Embedded development experience: RTOS and/or embedded Linux, low-level debugging on target hardware, and interfacing with motion controllers and sensors.
    • Hardware/software integration experience (MCU/SoC peripherals, serial buses, timing/latency considerations) and familiarity with common interfaces (RS-232/RS-485, USB, Ethernet, TCP/IP, CAN, I2C, SPI).
    • UI development experience for operator/service tools (WPF, WinForms, or Qt); ability to build effective diagnostics and recovery workflows.
    • Build and release tooling: CI/CD pipelines (e.g., Jenkins), automated test execution, packaging/deployment, and traceable release documentation.
    • Experience with factory/equipment communication standards such as SECS/GEM and related SEMI standards (e.g., E5/E30/E37/HSMS) and/or equipment performance tracking.
    • Experience with simulation or hardware abstraction techniques that enable development and testing before hardware availability.
    • Scripting and data analysis for troubleshooting (e.g., Python) and familiarity with issue tracking (e.g., Jira).
    • Understanding of machine safety concepts: interlocks, e-stops, safe-state design, and failure modes; exposure to functional safety standards (e.g., ISO 13849) is a plus.

    What Success Looks Like

    • You deliver reliable software that maintains throughput and uptime in production environments.
    • You reduce escalation frequency by improving diagnosability and recovery behavior.
    • You improve development velocity through pragmatic architecture, automation, and strong engineering hygiene.
    • You collaborate effectively across disciplines and communicate trade-offs clearly.

    Job Conditions / Additional Information

    Occasional domestic and international travel may be required (approximately 10%).

    Work involves extended periods at a computer workstation and may include time in manufacturing areas or at customer sites when supporting escalations.

    Numbers & Facts

    LocationSan Diego, CA

    Similar Jobs