Comcast Senior Software Engineer in Cambridge, Massachusetts
Comcast's Technology & Product organization works at the intersection of media and technology. Our innovative teams are continually developing and delivering products that transform the customer experience. From creating apps like TVGo to new features such as the Talking Guide on the X1 platform, we work every day to make a positive impact through innovation in the pursuit of building amazing products that are enjoyable, easy to use and accessible across all platforms. The team also develops and supports our evolving network architecture, including next-generation consumer systems and technologies, infrastructure and engineering, network integration and management tools, and technical standards.
Contribute to Comcast's Smart Network Platform (SNP), the multi-tenant, device and network service lifecycle management platform responsible for automating the management of Comcast's network to simplify operational activities, drive reduction in total number of outages and mean time to restore (MTTR), and increase network visibility; utilize Java and object-oriented programming, analysis, and design within the Spring framework to develop software in an Agile environment for network equipment monitoring, including Network Discovery Store, Translation, and Template services; utilize Relational and NoSQL databases; perform network routing and switching, including configuring Arista, Cisco, and Juniper routers using OSI and TCP/IP models; perform continuous integration utilizing Maven/Gradle, TeamCity/Jenkins, and Puppet; utilize cloud services such as AWS EC2, Route 53, SQS/SNS, and Lambda; implement API data validation routines within the data service's CRUD (create, read, updated, and delete) interface to ensure consuming applications adhere to Comcast's enhanced OpenConfig abstract schema; develop proprietary search/query APIs to allow SNP to provide a web-based user interface for automation of network engineering provisioning use cases, and enable other engineering teams to explore network data in an ad hoc fashion when automating provisioning use cases for CRAN, backbone, and datacenter routers; determine current system limitations and compatibilities between subsystems; participate in the selection of new concepts and methodologies; prepare technical requirements and software design specifications; perform user story writing and grooming; participate in sprint demos and retrospectives; write system overviews, API contracts, and user support and training documents; and perform peer code reviews.
Design, develop, test, debug and document new and existing software and or applications for real-times communication services.
Write technical specifications based on conceptual design and business requirements
Evaluate new and emerging technologies for implementation.
Create platform and other application prototypes quickly.
Contribute to and respond to peer code reviews as needed
Write code to create robust and scalable applications.
Strong technical expertise and troubleshooting skills for large scale enterprise systems and software.
Minimal conceptual, logical and physical data modeling with data modeling tools and database design in complex, large-scale data environments.
Strong Java and object oriented programming background,spring framework
Experience developing service oriented architectures and an understanding of design for scalability, performance and reliability.
Proficient in OO concepts and patterns
Experience in Client/Server architecture, Servlets and Web Services based on J2EE architecture
Application performance tuning
Understanding concepts of multi-threading, cache, memory management, Java Virtual Machine
Comfortable with operating systems like LINUX/UNIX
Strong analytical and problem solving skills and able to work as part of cross-functional teams.
Excellent communication and organizational skills and with Agile Software Development Life Cycle
Ability to identify / resolve system bottlenecks
Working knowledge of TCP/IP networking and similar network protocols is a plus.
Understand of network devices, switches and routers a plus.
- Bachelors Degree or Equivalent
- Engineering, Computer Science
- Generally requires 7-11 years related experience
Employees at all levels are expect to:
- Understand our Operating Principles; make them the guidelines for how you do your job
- Own the customer experience-think and act in ways that put our customers first, give them seamless digital options at every touchpoint, and make them promoters of our products and services
- Know your stuff-be enthusiastic learners, users and advocates of our game-changing technology, products and services, especially our digital tools and experiences
- Win as a team-make big things happen by working together and being open to new ideas
- Be an active part of the Net Promoter System-a way of working that brings more employee and customer feedback into the company-by joining huddles, making call backs and helping us elevate opportunities to do better for our customers
- Drive results and growth
- Respect and promote inclusion and diversity
- Do what's right for each other, our customers, investors and our communities
- Collaborates with project stakeholders to identify product and technical requirements. Conducts analysis to determine integration needs.
- Designs new software and web applications, supports applications under development, and customizes current applications. Assists with the software update process for existing applications, and roll-outs of software releases.
- Participates in training representatives and operations staff on internally developed software applications.
- Researches, writes and edits documentation and technical requirements, including software designs, evaluation plans, test results, technical manuals and formal recommendations and reports.
- Monitors and evaluates competitive applications and products. Reviews literature, patents and current practices relevant to the solution of assigned projects.
- Provides technical leadership throughout the design process and guidance with regards to practices, procedures and techniques. Serves as a guide and mentor for junior-level Software Development Engineers.
- Works with Quality Assurance team to determine if applications fit specification and technical requirements.
- Displays in-depth knowledge of engineering methodologies, concepts, skills, and their application in the area of specified engineering specialty.
- Displays in-depth knowledge of, and ability to apply, process design and redesign skills. Presents and defends architectural, design, and technical choices to internal audiences.
- Displays knowledge of, and ability to apply, project management skills.
- Consistent exercise of independent judgment and discretion in matters of significance.
- Regular, consistent and punctual attendance. Must be able to work nights and weekends, variable schedule(s) as necessary.
- Other duties and responsibilities as assigned.
Comcast is an EOE/Veterans/Disabled/LGBT employer