Full-Stack Software Engineer

San Francisco, CA, United States • $105k - $168k

Minerva Project


Role Location

  • San Francisco, CA, United States

Compensation

$105k - $168k

Employees

251 - 500 people

Address

1145 Market St Fl 9
San Francisco, CA, 94103, US

Tech Stack

  • Python
  • JavaScript
  • Django
  • React
  • Redux
  • Backbone
  • WebRTC
  • AWS

Role Description

Talented engineers have many companies to choose from, which makes the engineering team at Minerva that much more extraordinary. The salary and benefits are competitive, but the reason they chose Minerva is the company’s mission: To change the world, we need to improve education everywhere. Minerva offers a next-generation educational system based on leading scientific research. Built to address the central educational challenges of the modern era, the Minerva system enables the rapid development of sophisticated programs for organizations of all types—from university partners to corporate employers.

Most of our engineers have held many jobs in the past. Minerva is special because it is more than a job. It’s a chance to build something long-lasting, to leave a legacy and add meaning to your career. Our first class of Minerva Schools at KGI students is graduating in 2019, and we have already started the next chapter of bringing the Minerva system to the world, launching five partnerships this academic year. We take a long term view and, in our mission to nurture critical wisdom for the sake of the world, we've only just begun. We hope you join us!

Responsibilities

  • Design, build, deploy, operate, and maintain software across the stack from frontend to ops and databases.
  • Develop, articulate, and prioritize software requirements by working closely with the product manager and directly with other teams.
  • Use data-driven development and decision making to improve the performance, robustness, and scalability of our systems. An especially acute need is to overcome Internet and compute power limitations across the world.
  • Maintain and expand automated test coverage and QA processes to catch bugs early.
  • Invest in tools and automation to scale up. For your fellow engineers this might include reusable abstractions and subsystems, CI and ops automation, and performance monitoring. For other teams this could include workflow automation, predictive models, and application of optimization algorithms for student residence matching and course scheduling.
  • Recognize where personal human touch is important, and help people focus their energy on this by automating the rest.
  • Teach and learn from your teammates. Use collaborative activities like pair programming and code review as avenues for teaching and learning. Be receptive to feedback from your teammates and generous with your own. Participate in interesting internal tech talks and engineering book clubs.
  • Support a culture of code quality, documentation, and thoughtful design tradeoffs. Navigate between shipping sooner and long-term maintainability.
  • Participate in customer support to build empathy with applicants, students, and faculty. Learn how to best improve your software.

Technologies, tools, and processes

We value your ability to learn quickly, make thoughtful tradeoffs, and build maintainable systems over your past experience with specific technologies. That said, here are some of the tools that we use:

  • Python, Django, and Django REST Framework for building applications and APIs.
  • Celery for asynchronous jobs and workflows.
  • MySQL and Redis for data storage and caching. Likely migrating to PostgreSQL.
  • React, webpack, Babel, Marionette, and Backbone for building front-end JavaScript interfaces.
  • WebRTC with our own selective forwarding unit (SFU) for real-time video.
  • Autobahn pubsub technology to support the many features of our real-time distributed seminar classroom.
  • GitHub, CircleCI, codecov, AWS, and NewRelic for building, reviewing, testing, shipping, and operating our systems.
  • Slack for collaborating with local and remote coworkers, for integrating code review, deployment, and infrastructure notifications into a social space, and for sharing important GIFs.

We value empathy, candor, substantive feedback, fast iteration loops, and openness to experimentation over a specific software development process. That said, here’s what we currently do to plan, calibrate, and organize:

  • Use the unit of an “episode” to align planning and goal-setting across teams. Each episode is about four months long.
  • Plan high-level development themes at the beginning of each episode.
  • Run mini design sprints to design, prototype, and test ideas.
  • Gather at a weekly team meeting to reflect on the past week and discuss priorities and collaboration for the coming week.
  • Check in through a daily asynchronous standup in Slack to foster accountability, remove blockers, and keep others updated.
  • Conduct cross-functional blameless retrospectives twice per episode.
  • Organize structured peer feedback sessions once per episode.
  • Support each other giving internal brown-bag technical talks.

About Minerva Project

The Minerva Project partners with institutions and corporations to help them utilize the science of learning to improve their outcomes. Combining a reinvented curriculum, rigorous academic standards, and cutting-edge technology, Minerva provides an exceptional education to prepare future leaders and innovators across all disciplines.

We also built and operate the Minerva Schools at KGI: a WASC-accredited, four-year, undergraduate institution established in 2013. The Minerva Schools offer a unique undergraduate experience for the brightest, most motivated students in the world. Our undergraduates travel to seven vibrant world cities over the course of their four years, living in Minerva residences, immersing themselves in local cultures, and transferring their classroom experience into working with local civic leaders and organizations.

At the core of the system are an innovative methodology, an advanced educational technology, called the Active Learning Forum, and a modular curriculum design. By emphasizing active class participation, deliberate practice, and other empirically-proven methods, the system teaches students critical skills, as well as the ability to apply those skills to diverse and changing contexts.

Company Culture

The environment at Minerva is a blend of tech startup and university. You'll find shelves of neuroscience books instead of ping-pong tables, and when lunch conversation strays to work topics, you're just as likely to talk about technology challenges as you are to talk about new pedagogical techniques or what's going on with our students in 6 other cities around the world.

Interested in this role?
Skip straight to final-round interviews by applying through Triplebyte.