About Widevine
Solutions
Products
Partners
News & Events
Contact Us
Support
Intellectual Property
Widevine Technologies
Careers
 
» Company Profile
» Markets
» Executives
» Investors
» Organizations
» Intellectual Property
» FCC Mandates
» Common Reliance
» Careers
» Contact

 

 

Software Engineer – CPE Engineering Group

Apply for this position

Department: Engineering
Reports To: Lead/Principal Engineer
FLSA status: Exempt
Job Grade: 16

Responsibilities:

  • Development of software programs for embedded processors and operating systems, running on a variety of Set Top Box hardware and other Consumer Premises Equipment (CPE).
  • Research, plan, design, develop, test and document computer programs applying software development principles / techniques and knowledge of computer science, computer languages, and development. Will work on developing new programs and modifying existing programs.
  • Participate in product development team(s). Represent Product Development schedule and deliverables to team.
  • Assist with development of software requirements (e.g. operational and performance) / specifications and design.
  • Analyze, review, and rewrite programs written by other software developers to determine necessity for modifications; to reduce complexity and increase operating efficiency, modularity and/or adaptability to future requirements / enhancements. Develop new subroutines or expand program to simplify statements, programming, or maintenance.
  • Regularly review code and design documents.
  • Interface with various personnel sales, marketing, integration, advanced technologies, product development, technical support) to evaluate requirements / specifications / design.
  • Analyze software requirements / specifications to define design or determine feasibility of design within given constraints (e.g. time and cost).
  • Convert specifications / design into code. Submit code for merge into central repository, as needed.
  • Confer with supervisors, leads and representatives of other departments to resolve issues related to assignments.
  • Document program development (eg. comment) and produce other product development documents (eg. Feasibility analysis, Requirements, Specifications, Design).
  • Coach and mentor less experienced Software Developers.
  • May assist with developing software testing procedures and documentation (to describe installation and operating procedures for users).
  • May coordinate installation / configuration of software system.
  • May specialize in developing programs for a specific customer or maintenance of existing programs.

Qualifications / Requirements:

  • Bachelor’s degree in Computer Science, Electrical Engineering or equivalent experience plus 8+ years experience in Software Engineering
  • 3+ years experience the following domains; 1) audio/video streaming or other real time computing application, 2) cross-platform development in multiple CPU/operating system environments, 3) network protocols, 4) C++ software development
  • Demonstrated Object Oriented knowledge
  • Prior experience or strong background in commercial software development in a team environment
  • Demonstrated knowledge of embedded systems development, RTOS concepts, hardware/software integration, network communications protocols, streaming media protocols, computer networking, distributed computing, device drivers, OS internals (kernel) level engineering and computer security.
  • Good problem solving, analytic skills, and troubleshooting skills
  • Strong communication skills (oral, written, interpersonal)
  • Solid knowledge of software development concepts
  • C, C++, OOD/OOA/OOP, Windows, Linux, UNIX, Java, UML, Algorithm Design