Senior Software Engineer, Web Development

  • Full-time

Company Description

Turnitin is your partner in education with integrity. Turnitin’s originality checking and authorship investigation services ensure academic integrity, promote critical thinking, and help students improve their authentic writing. Turnitin provides instructors with the tools to prevent plagiarism, engage students in the writing process, and provide personalized feedback. Turnitin is used by more than 30 million students at 15,000 institutions in 140 countries. Turnitin is headquartered in Oakland, Calif., with international offices in Newcastle, U.K., Utrecht, Netherlands, Melbourne, Australia, Seoul, Korea and throughout Latin America.

Job Description

Turnitin is seeking a Senior Software Engineer to join and build the next generation of Turnitin's integrity and feedback tools used by millions of instructors and students. You will be building web application services, which enable users to interact with Turnitin's award winning similarity detection tools, and create and engage with rich feedback on documents. As a Senior Software Engineer, you will use your technical expertise and leadership to develop products which support students in classrooms worldwide.

Responsibilities 

  • Lead back-end Java engineering efforts for applications used in Turnitin products

  • Work hand in hand with other engineers along with other members of the scrum team - Product Management, UX, etc.

  • Produce high quality software that is unit tested, code reviewed, and continuously integrated

  • Shape and evangelize best practices to improve engineering and team productivity

  • Foster a culture of collaboration, mentoring and open communication

Qualifications

Required Skills 

  • 5+ years experience writing robust web/SaaS applications with Spring Framework (Spring Boot, Spring Cloud, Spring security, Spring MVC, Spring Data) using Java

  • 5+ years experience in object oriented programming with expert knowledge of distributed systems, microservices, concurrency, RESTful web services, SQL and no-SQL databases, and internet scalability

  • Extensive hands-on experience in building cloud ready solutions based on microservices, multi-tenancy architecture using Spring Boot and related Spring technologies.

  • Experience in designing and documenting RESTful APIs

  • Extensive experience with software development best practices (e.g. test-driven development, ORM, object-oriented design, code profiling, refactoring, debugging)

Preferred Skills
  • Experience with container and clustering technologies like Docker, Kubernetes, etc in a microservices environment is desirable

  • Front-end development interest and experience a plus

  • Background in cloud technologies and frameworks such as Amazon Web Services, Google Cloud, and OpenStack a plus

  • Good knowledge of federated security architecture, flows and standards, e.g. OAuth

Additional Information

Turnitin, LLC is committed to the policy that all persons have equal access to its programs, facilities and employment without regard to race, color, ancestry, national origin, age, gender, sexual orientation, gender identity, age, religion, creed, disability, medical condition, genetic information, marital or veteran’s status.

Privacy Policy