Previous Job
Principal Software Engineer
Ref No.: 18-14607
Location: Durham, North Carolina
Hi Kathy,
As we discussed here is the below role.
Title: Principal Software Engineer
Location: Durham NC
Duration: 06+ Months
By joining TiVo Metadata Engineering group you'll have the benefits of working for a large, public company while spending your days in a small, fast-paced team. Our job is to build software that helps people find the entertainment they enjoy. We spend a lot of time thinking about how to optimize the discovery experience, but we also passionately debate which of Trainspotting or Napoleon Dynamite is the best movie of all time. We like TV and movies. You don't have to like them too, but, "it'd be a lot cooler if you did." We need new ideas and new approaches, and someone ready to contribute from the start.

The basic responsibilities for the job may include:
  • Design, implement, and document core technology components
  • Develop custom applications using internal software frameworks
  • Develop and customize data mining and statistical techniques for operation on large datasets
  • Update, optimize, and administer large-scale data processing routines
  • Discovery solutions for television are changing fast. Internet connected TVs are disrupting the marketplace. Because of the rate of change, the primary qualities that we are looking for in candidates centers around general intelligence and problem solving skill, rather than specialization and specific work experience.
Our ideal candidates are:
  • Analytical. We want people who are able to evaluate situations that they have not encountered before and reason about them logically.
  • Creative. We want people who can go beyond a repertoire of standard solutions and answer Client challenges with innovative and outside-of-the-box solutions.
  • Practical. We want people who can find a balance between theory and practice to create solutions that are conceptually sound but also working and delivered on time.
  • Fast learners. We want people who can quickly understand new ideas and learn new technology.
  • Superior skills in Java and related open source technologies
  • Strong understanding of RESTful Web Services and MicroServices
  • Experience using messaging services (e.g. Kafka, RabbitMQ)
  • Experience using Spring Framework (Spring Boot experience preferred)
  • Experience with variety of database systems – relational and NoSQL (e.g. MySQL, MongoDB, PostgreSQL, SQL/Server)
  • Knowledge and experience with Cloud Container Management (e.g. Docker) a plus
  • Experience with lightweight web servers (e.g. Undertow, Jetty) a plus
  • Ability to solve complex business logic problems and design solutions using modern technologies
  • Excellent communication skills and the ability to work across teams to create the best possible solution
  • Technology leader for a team driving critical decisions and pushing projects to completion
  • Strong background in object oriented programming techniques and design patterns
  • Familiarity with Agile methodology and iterative development
  • Dedication to lifecycle best practices, including Test Driven Development, source code management and continuous integration
  • Passion for code quality using industry best practices around logging, monitoring, unit testing and code reviews
  • BA/BS or higher in Computer Science or a related technical degree
  • 10+ years professional experience working in software development field
  • 5+ years professional experience in Java development in a Linux environment