Embedded Engineer

NitelPhiladelphia, PA
6d$114,986 - $195,999

About The Position

Comcast's Platform Engineering team builds core software components and performance tools for RDK devices deployed across millions of homes globally. Our work spans broadband gateways, routers, mesh nodes, and video streaming devices, delivering secure, scalable, and high-performance solutions. You will work on platform-agnostic enhancements and performance-critical Device Management components such as Remote Management protocols, Code Upgrade, Telemetry, Logging, Linux network configuration and Debug Tools, amongst others in a fast-paced, agile environment. This role focuses on designing, developing, integrating and testing embedded software for RDK-based devices deployed across millions of homes.

Requirements

  • Programming: C/C++, Makefiles, CMake, Shell scripting, Python scripting, YAML scripting
  • Operating Systems: Linux (system calls, kernel, multi-threading, IPC).
  • Tools & Practices:
  • GitHub, GitHub Actions, Gerrit, Jenkins, GDB
  • Unit and functional testing
  • AI tools such as Copilot for code development and validation
  • CI/CD pipelines and DevOps principles for rapid and robust scaling
  • Static Code Analysis Tools: Coverity, Perforce
  • Bachelor's degree in Computer Science, Electrical Engineering, or related field.
  • 5-7 years of experience in embedded software development.
  • Ability to work independently and in a collaborative team environment.

Nice To Haves

  • Open-source packages and community participation
  • Embedded Linux Build Systems: Yocto Project, BitBake
  • Networking Protocols & Tools: TCP/IP, DHCP, DNS, iptables, netfilter
  • Device Management Protocols & Standards: TR-069 (CWMP), TR-181 Data
  • Performance & Profiling Tools: Valgrind, DUMA, perf, gprof
  • Inter-process Communication (IPC): RBUS, DBUS, JSON-RPC, Thunder.
  • Data Formats: JSON, XML.
  • Experience with RDK platform development.
  • Familiarity with cloud-based CI/CD environments.
  • Exposure to Agile development methodologies.

Responsibilities

  • Analyze requirements, design software components, and conduct peer reviews.
  • Present and defend architectural, design and technical choices to internal audiences.
  • Develop, integrate, and test embedded software for Linux-based platforms.
  • Debug real-time embedded applications and optimize performance.
  • Participate in design reviews and provide guidance to junior engineers as needed.
  • Collaborate with Systems Architecture, QA and Product teams to ensure quality and compliance.
  • Participate in software release processes and production configuration changes.
  • Document technical requirements, designs, and test results.
  • Engage with open-source communities and contribute to relevant projects.

Benefits

  • Paid Time off
  • Physical Wellbeing
  • Financial Wellbeing
  • Emotional Wellbeing
  • Life Events + Family Support
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service