Senior Software Engineer - Algorithms

Sightlines, LLC
Hood River, OR, United States
about 1 month ago
Apply on www.indeed.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Compensation
$125,000.0 - $150,000.0
Working hours
Regular working hours
Job source

Tech stack

Algorithm Design Computer Vision C++ (Programming Language) Concurrent Computing Software Debugging Multiprocessing Signal Processing Video Editing Multithreading Graphics Processing Unit (GPU) Information Technology

Job description

The Senior Software Engineer on our Algorithms team develops and integrates algorithms that enable real-time video processing, tracking, and detection on low-SWaP, embedded hardware, with a focus on delivering reliable performance in resource-constrained environments, particularly low-SWaP embedded systems.

  • Develop C/C++ video processing algorithm software on the latest ARM multi-core processors and/or embedded GPUs.
  • Work on embedded video processors used in security and surveillance products, including autonomous, airborne, ground, and other applications.
  • Directly support customers.
  • Work collaboratively with a diverse team of software developers, business development, and customers.
  • Contribute to roadmap development, participate in project prioritization, and provide guidance/mentorship to more junior software engineers.
  • Other duties as assigned.

Requirements

  • Bachelor’s degree in engineering, computer science, aerospace engineering, electrical engineering, or other relevant degree.
  • 5+ years of C/C++ algorithm development in one of the following domains: video, image, audio, or signal processing in resource-constrained environments, particularly low-SWaP embedded systems.
  • Experience with multi-threading and concurrent programming.
  • Experience with computer vision, image processing, tracking, detection or related algorithms.
  • Understands real-time performance, latency, memory, and compute constraints.
  • Strong debugging and performance analysis skills.
  • Ability to work independently, prioritize tasks, and meet milestones/deadlines.
  • Mustbe authorized to work in the United States on a full-time basis.

Competencies: To perform the job successfully, an individual should demonstrate the following competencies:

Apply Expertise in Technology

Complies with policies on acceptable use of technology; Applies knowledge of computer skills to perform the job successfully; Displays the ability to learn new computer skills.

Strategic Thinking

Develops strategies to achieve organizational goals. Understands organizations’ strengths and weaknesses. Analyzes market and competition to identify external threats and opportunities. Adapts strategy to changing conditions.

Planning/Organizing

Prioritizes and plans work activities; Uses time efficiently; Plans for additional resources; Sets goals and objectives; Organizes or schedules other people and their tasks; Develops realistic action plans.

Business Acumen

Ability to connect people with strategies for operational and financial outcomes.

Learn & Research

Demonstrates the understanding of newly presented information and retention for future applications.

Math Skills

Ability to add, subtract, multiply, and divide in all units of measure, using whole numbers, common fractions, and decimals.

Reliability

Good attendance; Balances professional and personal commitments effectively; Delivers work product on time and within the assigned parameters of the task.

Cultural Awareness

Awareness to think and act in intercultural environments appropriately; Respecting the diverse backgrounds of the people around them.

Gives & Receives Feedback

Articulates positive and constructive feedback appropriately; Gives recognition to a job well done; Upholds accountability; Accepts feedback from all employees.

Communication & Collaboration

Works effectively within a team; Shares information and acknowledges others’ efforts; Helps others when workloads are high; Keeps team and supervisor information of tasks.

Analytical

Synthetizes complex or diverse information; Collects and researches data; Uses intuition and experience to complement data

Innovation

Generates creative and original ideas of approaches; Seeks to improve performance; Proactive to identify and create new opportunities.

Physical Demands:

This role requires standing, walking, and sitting for extended periods; communicating in person and by phone; using hands to operate objects or controls; and reaching with hands and arms. Occasional stooping, kneeling, bending, crouching, and lifting up to 25 pounds may be required. Close and distance vision, depth perception, color vision, and focus adjustment are also needed. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.indeed.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

19:55 min

Automating video editing workflows with command line tools

Chris Heilmann Chris Heilmann +1 · LIVE

3:13 min

Multithreading basics and physical versus logical threads

Grzegorz Lang · World Congress 2022

5:55 min

Practical applications and use cases for computer vision

Flo Pachinger · LIVE

22:29 min

Navigating developer advocacy transitions and computational logic alternatives

Jodie Burchell · LIVE

8:05 min

Processing the accessibility impacts of aggressive video editing styles

Chris Heilmann Chris Heilmann +2 · LIVE

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

Videos

See all

Related articles

See all