Principal Software Engineer

  • Full-time

Company Description

Founded in 1996 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 26 million students at 15,000 institutions in 140 countries. We are headquartered in Oakland, Calif., with offices Austin, TX, as well as three international offices in Europe and Australia.

We offer a friendly and fun atmosphere, quiet work environment, 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.

Responsibilities:

    - Improve the quality of a large web software application and support the move to a micro-service architecture by writing new services that can gradually replace portions of the legacy code base
    - Increase the number, quality, and reach of unit and integration tests
    - Mentor engineers by working closely together on projects (e.g. pair programming, giving constructive feedback on code)
    - Investigate and address production issues
    - Work closely with software architects and database/operations engineers on system infrastructure and design
    - Identify and optimize inefficient SQL queries
    - Foster a culture of collaboration and open communication


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

Qualifications

  •     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
  •     Extensive experience with web application frameworks and software development best practices (e.g. test-driven development, ORM, object-oriented design, code profiling, debugging)
  •     Deployment experience with containers (e.g. Docker) and the cloud (e.g. AWS) preferred
  •     Demonstrated success working as a technical lead on one or more significant projects, including proven track records mentoring and supporting other engineers
  •     Ability to work with complicated legacy code (C++, Perl)
  •     Experience working with Linux and SQL databases
  •     Ability to communicate effectively with both technical and non-technical colleagues
  •     Experience or interest in working within an Agile model (particularly Scrum)
  •     Passion for tackling ambitious challenges and contributing business value
  •     Technical speaking history and/or contributions to open source projects a plus (include links in application)

Additional Information

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