Federal Signal Corporation

Engineer II - Software Engineering

Federal Signal Corporation$68K — $98K *
Information Technology
5 - 7 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's degree in computer science or equivalent
  • 5-7 years of previous experience in firmware development
  • Strong proficiency in C/C++ for embedded systems
  • Experience with Python and rapid prototyping tools
  • Deep knowledge of microcontroller architectures and communication protocols
  • Familiarity with popular RTOS like FreeRTOS or Zephyr
  • Excellent analytical and debugging skills

Responsibilities

  • Develop firmware architectures and algorithms that meet product requirements
  • Write clean and well-documented firmware code using embedded C/C++
  • Implement video technologies using protocols like FFmpeg and GStreamer
  • Incorporate OpenCV, PyTorch, and TensorFlow algorithms as needed
  • Utilize various hardware components to interact with firmware
  • Conduct thorough testing to identify and resolve firmware defects
  • Collaborate with hardware engineers for seamless integration

Benefits

  • Annual bonus potential
  • Comprehensive insurance plans (life, medical, dental, vision)
  • Paid holidays and vacation
  • 401(k) with matching contributions
  • Tuition reimbursement
  • Smoke-free, drug-free workplace
Full Job Description
The successful candidate will be responsible for designing, developing, and testing the low-level software (firmware) that controls the functionality of electronic hardware devices, like embedded systems and computer peripherals, requiring a deep understanding of hardware architecture and proficiency in programming languages like C/C++ to create code that interacts directly with the hardware components, often utilizing real-time operating systems (RTOS) to ensure timely system responses; they collaborate with hardware engineers to ensure seamless integration and troubleshoot issues throughout the product development cycle.

Essential Job Duties & Responsibilities:
  • Develop firmware architectures and algorithms to meet product requirements, considering hardware constraints and performance optimization.
  • Write clean, efficient, and well-documented firmware code using embedded C/C++ programming languages, adhering to coding standards and best practices.
  • Implement video technologies using protocols including FFmpeg, GStreamer, H.264/H.265, RTSP, and WebRTC.
  • Understand and determine best fit strategies for incorporation of OpenCV, PyTorch, TensorFlow, YOLO, and/or TensorRT algorithms
  • Understand and utilize various hardware components like microcontrollers, memory, peripherals, and communication interfaces to interact with them through firmware.
  • Work with RTOS to manage system tasks with precise timing and priority levels.
  • Conduct thorough unit integration, and system-level testing to identify and resolve firmware defects, utilizing debugging tools and techniques.
  • Work closely with hardware engineers to ensure smooth integration between firmware and hardware components, addressing design challenges and providing feedback.
  • Create detailed technical documentation for firmware design, implementation, and testing procedures.
  • Support existing firmware by implementing bug fixes, feature enhancements, and updates to address customer needs.
  • May include travel to the field and/or trade shows.
  • Perform product evaluations to determine if engineering standards are met.
  • Flexibility to perform other duties and assignments as required

Position Requirements:
  • Bachelor's degree in computer science or equivalent from an accredited university.
  • 5-7 years of previous experience in a similar role.
  • Demonstrated use of Python, Roboflow, NodeJS, Figma or similar tools for rapid prototyping.
  • Familiarity with creating and modifying YAML for configurations and collaboration.
  • Strong proficiency in C/C++ programming languages with a focus on embedded systems.
  • Experience with developing containerized analytics modules using Docker.
  • Fluency in switching between Windows, Linux, and embedded environments and toolkits.
  • Deep knowledge of microcontroller architectures, memory management, peripherals, and communication protocols.
  • Experience with popular RTOS like FreeRTOS, Zephyr, or similar.
  • Familiarity with IDEs, debuggers, emulators, and other development tools for embedded systems.
  • Experience with unit testing, integration testing, and system-level validation methodologies.
  • Excellent analytical and debugging skills to identify and troubleshoot complex firmware issues.
  • Ability to effectively communicate technical concepts to both technical and non-technical stakeholders.

Wage Range: $68,731 - $98,187 Plus Bonus

Benefits of Employment

In addition to excellent career growth opportunities, Federal Signal Corporation offers a wide array of benefits including: annual bonus potential, insurance (life, medical, dental, vision), paid holidays, paid vacation, 401(k) with matching contributions and tuition reimbursement. We provide our employees with a smoke-free, drug-free workplace.

About Federal Signal Corporation

Federal Signal Corporation is a global corporation with about 3200 employees located in Oak Brook, Illinois. Federal Signal designs, develops, and manufactures security systems, fire rescue products, street sweepers, and industrial vacuums. The company operates in two segments: Environmental Solutions Group and Safety and Security Systems Group. The Environmental Solutions Group segment manufactures and supplies a range of street sweepers, vacuum trucks, and other specialty vehicles. The Safety and Security Systems Group segment offers systems and products for campus and community alerting, emergency vehicles, first responder interoperable communications, and industrial communications.
Learn more about Federal Signal Corporation
Size
3,900 employees
Market Cap
$2.7 billion
Industry
Net Income
$96.2 million
Founded
1901
5 Year Trend
+11.4%
Revenue
$1.1 billion
NASDAQ

Similar Jobs

More Jobs at Federal Signal Corporation

More Information Technology Jobs

Find similar Engineer II - Software Engineering jobs: