Embedded Software Engineer (C, C++, Rust) - Comcast Corporation
Philadelphia, PA
About the Job
Job Summary
**About Us**Comcast brings together the best in media and technology. We drive innovation to create the world's best entertainment and online experiences. As a Fortune 50 leader, we set the pace in a variety of innovative and fascinating businesses and create career opportunities across a wide range of locations and disciplines. We are at the forefront of change and move at an amazing pace, thanks to our remarkable people, who bring cutting-edge products and services to life for millions of customers every day. If you share in our passion for teamwork, our vision to revolutionize industries and our goal to lead the future in media and technology, we want you to fast-forward your career at Comcast.**Job Summary**The Comcast Trusted Computing platform secures X1, the best Cable TV experience on the market. The Trusted Computing Products team is responsible for all aspects of the architecture, design, development, and operations of the identity provisioning and authentication, content encryption, and DRM license services that back the secure video delivery on Comcast's X1 platform. Our deliverables include client-side and embedded systems work that enables outstanding video experiences across a diverse set of platforms. TCP and X1 fall within Comcast’s Technology, Product, and Experience (TPX) organization. We are a diverse team with a laid-back work environment, casual attire, flexible work hours, and great benefits!Job Description
As a Software Engineer on the Trusted Computing Products team you are expected to be a hard-working and self-motivated individual with a strong technical background, demonstrate talent in computer science fundamentals, and a history of successful contributions in a fast-paced and large-scale environment. Depending on the Engineer’s experience and interests, a project portfolio could include direct responsibility for architecture, development, and maintenance of client-side components. This is an outstanding opportunity to contribute to multiple platforms in a world class system and practice security systems engineering!
**What You'll Do:**
- Work with internal customers and Trusted Computing Products team members to provide content security solutions.
- Implement and test content solutions under the direction of technical leaders.
- Observe industry software development standard processes: coding style/conventions, code reviews, static analysis, unit/integration tests, version control, etc.
- Actively participate in design/code reviews providing feedback to ensure functionality, coding standards, accuracy, and testability targets are met.
- Participate in Agile process ceremonies providing input for task definition, work estimates, planning, grooming, and retrospectives.
- Provide technical assistance and mentorship to less experienced content protection engineers.
- Provide ongoing support and maintenance of deployed products.
- Participate in fixing/debug investigations and resolution efforts when necessary.
- Pursue an active learning approach to content security, staying up to date on industry knowledge, trends, standard processes, and disseminates information to team members.
- Exhibit regular, consistent and punctual attendance.
- Other duties and responsibilities as assigned.
**What You'll Need:**
- Minimum of 2 years of experience as an active contributor during all phases of the agile software development lifecycle with the ability to demonstrate specific and detailed individual contributions in the areas of architecture/design, development, testing, release, and maintenance.
- A detailed understanding of common data structures and their usage within software applications. Experience and proficiency with common programming algorithms and their relative tradeoffs.
- Proficiency with object-oriented development, data modeling, and common software design patterns.
- Experience defining and employing document structures and data serialization techniques through one or more common formats (e.g., JSON, XML, or ASN1).
- A sense of proud ownership and an ongoing desire to proactively enhance products and processes.
- Strong English communications skills, with the ability to describe advanced technical concepts clearly, concisely, and accurately to diverse audiences in speech and in writing.
- A Bachelor’s degree in Computer Science, Electrical Engineering, or a related field.
**What Technology Skills Are Preferred:**
- Experience developing embedded software in a Linux/Unix environment, including basic system configuration, scripting, networking, and debugging.
- Strong programming knowledge with C, C++ and Rust
- Experience with large scale open source-based software architectures and development practices.
- Experience with SoC based software application development related to trusted applications completing in a dedicated TEE.
- Experience working with standards-based cryptography and trust primitives e.g., AES, RSA, Elliptic Curve, X.509 Certificates and applying standard cryptographic libraries e.g., OpenSSL.
- Experience with IP video streaming protocols such as HLS or DASH and associated DRM content protection systems such as Widevine, PlayReady, or FairPlay DRM systems.
- Experience working with HTTP network stack transactions.
- Experience developing applications for TVs, Set Top Boxes, Streaming devices, Android devices, iOS devices, and web applications.
- Experience authoring and refining technical specifications.
- Experience with development in languages such as Java, Kotlin, Swift, Objective C, and Javascript.
- High level of understanding of Cryptographic functions: symmetric vs asymmetric vs hashes
The Global Devices Organization (GDO) is a team within Comcast’s grander Technology Product and Experience organization (TPX) which supports the Product Management, Research & Development, Engineering and Operations for Comcast’s Elite Video Experiences in use by Comcast and Syndicated Partners.
We primarily support the Next Generation IP Video Devices including Set Top Boxes and TVs as well as Mobile and second Screen platforms. These platforms deliver video for live linear, video on-demand and cloud DVR services consumed by more than 20 million customers both in-home and out of home on stb’s, connected tv, mobile and desktop products.
**Education**
Bachelor's Degree: Computer and Information Science (Required)
While possessing the stated degree is preferred, Comcast also may consider applicants who hold some combination of coursework and experience, or who have extensive related professional experience.
Certifications (if applicable)
**Relative Work Experience**
2+ Years
This position is ineligible for visa sponsorship. To be considered for this role, you must be legally authorized to work in the United States and not require sponsorship for employment now or in the future.
Comcast is proud to be an equal opportunity workplace. We will consider all qualified applicants for employment without regard to race, color, religion, age, sex, sexual orientation, gender identity, national origin, disability, veteran status, genetic information, or any other basis protected by applicable law.
Skills:
C++ Programming Language; Embedded Software; Documentations; Coachability; Agile Software Development Lifecycle; Communication
Base pay is one part of the Total Rewards that Comcast provides to compensate and recognize employees for their work. Most sales positions are eligible for a Commission under the terms of an applicable plan, while most non-sales positions are eligible for a Bonus. Additionally, Comcast provides best-in-class Benefits to eligible employees. We believe that benefits should connect you to the support you need when it matters most, and should help you care for those who matter most. That’s why we provide an array of options, expert guidance and always-on tools, that are personalized to meet the needs of your reality – to help support you physically, financially and emotionally through the big milestones and in your everyday life. Please visit the compensation and benefits summary on our careers site for more details.
Education
Bachelor's Degree
While possessing the stated degree is preferred, Comcast also may consider applicants who hold some combination of coursework and experience, or who have extensive related professional experience.
Relevant Work Experience
2-5 Years