Software Engineer

Actalent
Newark, United States of America
6 days ago

Role details

Contract type
Temporary to permanent
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Compensation
$ 115K

Job location

Newark, United States of America

Tech stack

Artificial Intelligence
Data analysis
Computer Vision
C++
CMake
Nvidia CUDA
Corona (Software Development Kit)
Device Drivers
Distributed Systems
Embedded Software
Field-Programmable Gate Array (FPGA)
Hardware Design
Imaging Technology
Integrated Development Environments
Python
Linux kernel
Linux System Administration
Matlab
Machine Learning
Microsoft Visual Studio
OpenCL
Systems Development Life Cycle
Signal Processing
Software Engineering
Software Systems
Visual Systems
Multithreading
Scripting (Bash/Python/Go/Ruby)
PIC Microcontroller
Parallel Computation
GIT
Build Management
Optimization Algorithms
Build Tools
C++14
Software Version Control

Job description

This role focuses on developing high-performance software in modern C++ for advanced vision systems in a small, collaborative engineering team. You will design, implement, and optimize software that leverages parallel, heterogeneous, and distributed computing concepts to support complex image processing, computer vision, and signal processing applications., + Design, implement, and maintain software solutions using modern C++ with a strong emphasis on performance, reliability, and maintainability.

  • Develop and optimize parallel software components, applying advanced parallel programming and optimization techniques.

  • Implement and integrate heterogeneous and distributed computing solutions, including CUDA and/or OpenCL, as well as standard multithreaded development.

  • Collaborate with team members using version control tools such as Git to support team-driven development workflows.

  • Contribute to embedded systems development on platforms such as ARM and Xilinx FPGAs, including microcontroller and FPGA or DSP programming.

  • Develop and integrate software for cameras and imaging systems, including handling video interfaces and standard video formats.

  • Participate in Linux kernel and driver development as needed to support hardware integration and system performance.

  • Use application build tools such as CMake and Microsoft Visual Studio to configure, build, and maintain software projects.

  • Apply AI and machine learning concepts and frameworks to enhance image processing, computer vision, and signal processing capabilities where applicable.

  • Create scripts and tools in Python and MATLAB to support development, testing, data analysis, and algorithm prototyping.

  • Collaborate closely with a small team to define requirements, review designs, and ensure high-quality deliverables for vision system projects.

  • Contribute to ongoing and new vision system projects for defense-related applications, supporting the team as new work is won and projects evolve., You will work in a small, highly collaborative team focused on developing vision systems primarily for defense-related applications. The environment emphasizes winning and delivering new projects, offering the opportunity to contribute to cutting-edge imaging and vision technologies. The current project is expected to run for approximately two years and requires additional engineering support, with more work anticipated to follow. You will work with modern software development tools and technologies, including C++, CUDA/OpenCL, embedded platforms such as ARM and Xilinx FPGA, Linux-based systems, and build tools like CMake and Microsoft Visual Studio. The setting supports close collaboration, knowledge sharing, and involvement across the full development lifecycle, from design and implementation to integration and optimization.

Requirements

  • Professional or significant experience programming in modern C++ with a focus on performance and optimization.

  • Strong understanding of parallel programming and optimization techniques.

  • Familiarity with computer architecture and operating systems.

  • Experience using version control software such as Git in a team-driven development environment.

  • Professional or significant experience with parallel computing concepts.

  • Knowledge of heterogeneous and distributed computing concepts, including CUDA and/or OpenCL.

  • Experience with standard multithreaded software development.

  • Experience in software development and software engineering, including embedded software development.

  • Experience in image processing, computer vision, or signal processing.

Additional Skills & Qualifications

  • Experience with Artificial Intelligence (AI) and Machine Learning (ML) concepts and frameworks.

  • Experience in embedded systems development on platforms such as ARM and Xilinx FPGA.

  • Microcontroller programming experience.

  • FPGA or DSP programming experience.

  • Knowledge of cameras and imaging systems.

  • Knowledge of video interfaces and standard video formats.

  • Experience with Linux kernel and driver development.

  • Experience with application build tools such as CMake and Microsoft Visual Studio.

  • Proficiency with Python and MATLAB for scripting, analysis, and prototyping.

Benefits & conditions

This is a Contract to Hire position based out of Newark, DE.

Pay and Benefits

The pay range for this position is $36.05 - $55.28/hr.

Eligibility requirements apply to some benefits and may depend on your job classification and length of employment. Benefits are subject to change and may be subject to specific elections, plan, or program terms. If eligible, the benefits available for this temporary role may include the following: * Medical, dental & vision * Critical Illness, Accident, and Hospital * 401(k) Retirement Plan - Pre-tax and Roth post-tax contributions available * Life Insurance (Voluntary Life & AD&D for the employee and dependents) * Short and long-term disability * Health Spending Account (HSA) * Transportation benefits * Employee Assistance Program * Time Off/Leave (PTO, Vacation or Sick Leave)

Workplace Type

About the company

Actalent is a global leader in engineering and sciences services and talent solutions. We help visionary companies advance their engineering and science initiatives through access to specialized experts who drive scale, innovation and speed to market. With a network of almost 30,000 consultants and more than 4,500 clients across the U.S., Canada, Asia and Europe, Actalent serves many of the Fortune 500.

Apply for this position