Principal Software Engineer – Microservices

  • Full-time

Company Description

Founded by UC Berkeley graduates, we’re the leading provider of Cloud-based grading, peer review, and originality services to educational institutions worldwide.

Our award-winning solutions for educators, researchers, and students promote critical thinking, ensure academic integrity and help students improve their writing. Our products are used by more than 30 million students at 15,000 institutions in 140 countries. We are headquartered in Oakland, Calif., with offices Austin, TX, as well as several international offices.

We offer a friendly and fun atmosphere, family-friendly work-life balance, competitive salaries, excellent benefits, flexible schedule, and other perks

Job Description

We are looking for a principal software engineer interested in web products and site reliability to develop and improve our award-winning educational software.  As an engineer in this position, you will lead projects to refactor and modularize code in order to make the system more scalable as well as implement features that support our product. This position is part of a fun and highly technical team responsible for maintaining critical business workflows in our SaaS application.


Responsibilities:

  • Improve the quality of a large web software application
  • Implement highly scalable, elegantly simple, secure, maintainable, and modular commercial grade new software for the core  technology stack
  • Support the move to a microservice architecture by designing and writing new services that can gradually replace portions of the legacy codebase.  Investigate, document, drive, and define goals, designs, plans, and implementation strategies for the transition to a microservices architecture
  • Increase the number, quality, and reach of unit and integration tests
  • Investigate and address production issues; work closely with software architects and database/operations engineers on system infrastructure and design
  • Accelerate the reduction of technical debt across our production software systems
  • Evangelize and implement engineering and testing best practices across the company (code reviews, SCM conventions, tools, etc)
  • Foster engineering best practices and technical excellence through mentoring of engineers and working closely together on projects (e.g. pair programming, code review)
  • Provide technology analysis, proof of concepts, pilots, evaluations,and recommendations across our various heterogeneous technology stacks (LAMP, Java, Ruby on Rails, Go, Node.js, iOS, Android)


You will be working from our main office in beautiful downtown Oakland, just steps from BART.

Qualifications

Must-haves:

  • 8+ years experience writing robust web/SaaS applications in one or more high-level programming languages such as Java, Python, Ruby, Perl, Golang, or Node.js
  • 6+ years experience in object oriented programming with expert knowledge of distributed systems, concurrency, REST web services, SQL and no-SQL databases, and internet scalability
  • Ability to work with complicated legacy code
  • Experience with container and clustering technologies like Docker, Kubernetes, Tectonic, etc in a micro-services environment
  • Experience working with Linux and SQL databases
  • Extensive experience with web application frameworks and software development best practices (e.g. test-driven development, ORM, object-oriented design, code profiling, debugging)
  • Demonstrated success working as a technical lead on one or more significant projects including mentoring and supporting other engineers
  • Strong communication skills and ability to communicate effectively with both technical and non-technical colleagues
  • Experience or interest in working within an Agile model (particularly Scrum)
  • A high level knowledge and experience of industry trends and technology advancements relating to distributed systems, cloud, platform as a service, software as a service


Pluses:

  • Experience in participating in open source standards and contributing to open source
  • Technical speaking history
  • Knowledge of cloud technologies and frameworks such as Amazon Web Services, Google Cloud, and OpenStack

Additional Information

All your information will be kept confidential according to EEO guidelines.