Linux Acquisition Software Development
Save this job and keep your search organized
Create a free account to save jobs, create alerts and return to this listing from your dashboard.
By continuing, you agree to our Terms & Privacy Policy.
Be visionary
Teledyne Technologies Incorporated provides enabling technologies for industrial growth markets that require advanced technology and high reliability. These markets include aerospace and defense, factory automation, air and water quality environmental monitoring, electronics design and development, oceanographic research, deepwater oil and gas exploration and production, medical imaging and pharmaceutical research.
Be visionary
Teledyne Technologies Incorporated provides enabling technologies for industrial growth markets that require advanced technology and high reliability. These markets include aerospace and defense, factory automation, air and water quality environmental monitoring, electronics design and development, oceanographic research, deepwater oil and gas exploration and production, medical imaging and pharmaceutical research.
We are looking for individuals who thrive on making an impact and want the excitement of being on a team that wins.
Job Description
Teledyne Vision Solutions is seeking a highly motivated Linux Software Developer to join the Acquisition Software Group. The successful candidate will contribute to the design, development, validation, and maintenance of high-performance image acquisition software for machine vision systems, including frame grabbers, camera interfaces, device drivers, and software development kits.
This role involves developing software spanning user-space libraries, GenTL producers, and Linux kernel drivers, with a strong focus on software quality, performance, automation, and cybersecurity. The candidate will work closely with hardware, FPGA, QA, and product teams to deliver reliable acquisition solutions used in demanding industrial, medical, scientific, and automation applications.
The ideal candidate is passionate about Linux development, enjoys solving complex low-level software challenges, and embraces modern software engineering practices including automated testing, continuous integration, static analysis, and AI-assisted development.
What You Will Do
Software Development
- Design, implement, and maintain acquisition software components for Linux platforms.
- Develop and maintain Linux kernel drivers for frame grabbers and GigE Vision acquisition devices.
- Develop user-space libraries, APIs, SDK components, and GenTL producers.
- Optimize software performance, memory usage, and throughput for high-bandwidth image acquisition systems.
- Investigate and resolve complex issues involving hardware, drivers, operating systems, and customer applications.
- Support integration with machine vision standards such as GenICam, GenTL, GigE Vision, CoaXPress, and Camera Link HS.
Software Quality and Validation
- Create, maintain, and execute automated software tests.
- Develop unit tests, integration tests, and system-level validation suites.
- Improve software test coverage and quality metrics.
- Perform root-cause analysis and debugging of software defects.
- Utilize static code analysis, sanitizers (ASAN, TSAN, UBSAN), and other quality assurance tools.
- Participate in design reviews, code reviews, and cybersecurity assessments.
DevOps and Automation
- Contribute to CI/CD pipelines and automated build systems.
- Develop scripting and automation tools using Python and shell scripting.
- Support software packaging, deployment, and installation on Linux distributions.
AI and Modern Development Practices
- Leverage AI-assisted development tools to improve software quality and productivity.
- Evaluate and integrate AI technologies that support software development, testing, validation, and maintenance activities.
- Apply AI techniques for log analysis, test generation, anomaly detection, and software engineering workflows where appropriate.
Collaboration
- Work closely with hardware, FPGA, product management, QA, and customer support teams.
- Participate in technical discussions, project planning, and architecture reviews.
- Contribute to technical documentation and knowledge sharing within the organization.
To be successful in this role we would love if you have:
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, Computer Engineering, Artificial Intelligence, or equivalent experience.
- Strong software development experience in C and C++.
- Programming experience in Python.
- Experience developing software on Linux platforms.
- Experience with multithreaded and concurrent software development.
- Experience debugging complex software issues in Linux environments.
- Understanding of Linux system internals and operating