Software Engineer – Cloud
San Diego, California
A Software Engineer helps us create and build on our large suite of security and content protection products. These products are used around the world to protect video content that is delivered via satellite, cable, and the internet. A successful software engineer works to deliver value to our customers by collaborating hand-in-hand with Product Management and engineering teammates to design, build and deliver high-performing, scalable products.
To be successful, you must be proactive, interactive, creative, and flexible. If you want to make an impact, but be part of something bigger than yourself, then you are already the best kind of teammate. We love working with people who care about customers, quality, new technologies and the people they work with! Help us navigate through challenging problems, setting new standards of innovative problem solving. The technical world moves at an unbelievable pace and we want to move even faster. Join our creative, fast-paced, tight-knit group of engineers and become part of the solution.
We are a global company and appreciate people with global awareness and knowledge (languages other than English are a bonus).
ESSENTIAL DUTIES AND RESPONSIBILITIES include the following. Other duties may be assigned.
- Design and develop software for managing premium video content in various environments
- Work closely with your own and other engineering development teams to ensure seamless software and process integration
- Be an active part of discussions about architecture, specifications, requirements, testing and design reviews
- Bring to life both your own and your teammates’ creative and innovative technical designs and ideas
- Champion quality, security, and best deployment practices
- Help us innovate and build new products while continuing to expand the capabilities of our current successful ones
- Bring your vision and brainpower into developing new algorithms and software, re-architecting current designs in order to create new capabilities as well as improve performance, efficiency, and sustainability.
- Lead projects, small and large, working with teams inside and outside of the US
- Work across teams without barriers of why things cannot be done and help us constantly move forward
- Mentor other software engineers to be more like you, but do not stop growing and improving
- Bring your experience and insight to proactively suggest improvements to the products, processes, or internal tools
- We have got a lot of happy customers and we need you to help us keep them happy
QUALIFICATION REQUIREMENTS: To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
- 8+ years software engineering work experience using Python or Java or C/C++ (more than 1 language is a big plus)
- 6+ years object-oriented design and hands-on coding (primarily back-end work)
- 2 or more years’ experience developing, maintaining and deploying cloud infrastructure and applications. Deep understanding of core AWS services and best practices including scalability and security.
- Proficient in Linux based systems, serverless computing concepts and cloud infrastructure
- Significant programming experience using Multi-threading and Client/Server distributed architecture
- Experience with docker and containerization technologies
- Experience with git
- Working knowledge of continuous integration and continuous deployment strategies
- Knowledge of best practices in an always-up, always-available service
- Able to design and develop horizontally scalable, resilient, and highly performant services.
- Solid communication skills including documentation
Additional Experience any of the following would be a plus:
- Web server technologies such as Tomcat, Nginx, or Apache
- Ability to define, design and develop critical components of a multi-tenant security model
- Automated deployment tools such as CDK, CloudFormation
- Security technologies including Security Groups, WAF, firewalls, IPS, Web Security
- Experience using SOAP and REST interfaces
- Amazon RDS, DynamoDB
- Development experience with SQL and/or NoSQL databases (administration experience also a bonus)
- Security protocols, cryptography, PKI, SSL/TLS experience
- Digital Rights Management