OneTrust is looking for a Principal Software Engineer to join their agile Product Engineering team to develop, contribute to design and architecture decisions for new frontend and/or backend features, and support existing development efforts for their industry-leading platform, enabling organizations to use data and AI responsibly.
Requirements
- Extensive hands-on experience and expertise in object-oriented design methodology and application development using Java/J2EE, Design Patterns, Spring MVC, SQL, Web services.
- Experience with elastic search and data streaming tools like Kafka.
- Good understanding of web services and SOA related standards like REST/OAuth/JSON.
- A competent understanding of code and script (Python, Bash)
- Moderate experience with SQL and NoSQL databases
- Ability to use a wide variety of open-source technologies and cloud services (Azure, Google Computer, or Amazon Web Services)
- Recent development experience using Drupal, Ember, Angular 8+, Java 7+, or Python.
Responsibilities
- Support development of web and mobile interfaces for product module or new prototypes using HTML, CSS, JavaScript/Typescript and/or the designing, development, and unit testing of applications deployed to MS Azure while assisting with cloud application architecture using Drupal, Python, Core Java, REST, and the Spring ecosystem.
- Achieve at least 80% code coverage or per the revised standards set by the team
- Work closely with UX, Product Managers and/or Product Owners, as well as other developers to contribute to planning and grooming sessions and drive team's discussions on system architecture and component design.
- Support the team to ensure all committed stories for the sprint are completed per the sprint goal
- Work toward reducing total number of defects in the module/product to industry standards by catching and fixing issues early in development.
- Ensure critical and high priority CII's are delivered per SLA.
- Conduct peer reviews to improve code quality.
Other
- 8+ years of professional software engineering/development experience
- Agile development (Scrum, XP, or Pair Programming) experience
- A self-learner who is open to new technologies, processes, or techniques to improve your ability to deliver high-quality software.
- Someone who asks questions to clarify gaps in understanding.
- Help junior developers follow development testing, exploratory testing, AI testing and/or test automation.