ITHAKA’s mission is to expand access to knowledge and education around the world. Our services — JSTOR, Portico, and Ithaka S+R — enable people everywhere to learn, to grow, and to overcome barriers to education. In carrying out our mission, as employees we feel a deep responsibility to members of our community and to each other, and we are committed to building and sustaining a culture where everyone can thrive.

The Role

As a full-stack Senior Software Engineer at ITHAKA, you have an opportunity to put your talents towards a deeply meaningful mission. You will work on high-impact products that help put education within everyone’s reach. In this role you will:

  • Have the freedom to leverage the right tools and languages to solve problems. Right now, we use technologies including AWS, Kubernetes, Kafka, Java, Golang, Python, TypeScript, and GitHub/GitLab. 
  • Develop and deploy software through an automated continuous delivery pipeline supporting over 200 production deployments a week.
  • See the impact of your work as it is put in front of millions of users.
  • Contribute to open source! We give back to the community whenever we can.

Responsibilities

  • Participate as an empowered member of a collaborative Agile team to design, develop, and maintain high performance applications.
  • Leverage continuous deployment and test automation tools to deploy application changes to production multiple times per day.
  • Interact with internal and external customers to understand their needs and drive the development of web applications to meet those needs.
  • Implement rich, interactive web applications using the latest technologies, frameworks, and patterns.
  • Leverage web analytics to support product discovery and to measure project KPIs.
  • Test, measure, and optimize performance using Application Performance Management tools.
  • Participate in the on-call rotation as a first point of contact for applications you own.
  • Demonstrate leadership skills in mentoring team members and articulating and evangelizing new technologies, methodologies, and processes.
  • Participate in analysis of pricing, risk/reward, cost advantages, and resourcing to support technological improvements.

Experience and Skills

Required

  • Minimum of 3 years of experience as a full-stack software engineer building large-scale, distributed web applications. 
  • Proven experience with cloud infrastructure services–in particular AWS (Lambda, API Gateway, Step Functions).
  • Expertise creating and operating backend services using languages like Python, Golang,  Java, or JavaScript/TypeScript with frameworks like Fast API, NodeJS or Spring Boot.
  • Fluent in creating and operating user-facing applications using frameworks like React or Vue.
  • Experience creating and managing APIs for use by multiple teams using REST or GraphQL.
  • Deeply knowledgeable in using a decentralized version control system like Git in a collaborative context on a platform like GitHub or GitLab.
  • Proficient in creating and operating containerize applications, particularly in a Kubernetes environment using Docker.
  • Familiarity with testing frameworks (e.g. JUnit, Jest, pytest, Playwright) and TDD practices.
  • Hands-on experience mentoring other engineers in a technical and interpersonal capacity.
  • Exceptional communication, thoughtfulness, and desire to give and receive regular feedback.

Desired

We do not expect any single candidate to have expertise across all of these areas. We look for candidates that have a passion for continuous improvement and the ability to optimize code for clarity, reliability, and performance. Our commitment to onboarding, mentorship, and continuous learning means that you will have support as you learn new technologies.

  • Real world experience building and operating LLM- or ML-backed systems in production.
  • Ability to evaluate and reason about LLM outputs and system behavior. 
  • Experience utilizing Open Search for powering ML based solutions.
  • Experience with serverless and event driven architecture is a plus.
  • Proven background with accessible coding practices, including semantic HTML, ARIA attributes, and keyboard navigation. Experience using profiling tools to analyze and optimize application performance like Graphite, Grafana, and Prometheus.
  • Working knowledge with cache management, content delivery, and application security at the edge using CDNs like Fastly or CloudFront.
  • Exposure and fluency working with data modeling in relational databases (e.g. PostgreSQL and MySQL) or NoSQL (e.g. MongoDB and DynamoDB).
  • Experience securing large applications against SQL injection, XSS, CSRF and other exploits.
  • Established in practice using Terraform or other infrastructure-as-code tools. 
  • Highly effective with GraphDB such as Neo4j, AWS Neptune etc.
  • Experience leveraging AI tools like Claude, Codex etc in an appropriate fashion in the SDLC.

Compensation & Benefits

At ITHAKA we believe in openness and equity. Part of living those values is our commitment to clarity about salary ranges, so candidates know what to expect. The starting salary for the Senior Software Engineer position ranges from $112,240.00 – $140,300.00. Starting pay may vary with job-related knowledge, skills, and experience. At present, our total compensation package for benefits-eligible employees includes medical, dental, and vision plans, an employer-paid 10% retirement contribution, paid parental and caregiver leave, 22 days of paid time off, 11 paid holidays, up to 12 sick days, wellness benefits, and more. Please note that ITHAKA, at its discretion, may make changes to its benefits programs from time to time.

#LI-JS1  #LI-REMOTE  

Work for ITHAKA 

We are committed to our organizational values of belonging, evidence, speed, teamwork, and trust. We take seriously the need for everyone to feel welcome. Belonging is one of our core values, and it shows in our vibrant culture. People from a wide range of backgrounds work at ITHAKA, and we believe that unique perspectives help us realize new insights and build better solutions.

We want to work with people who are passionate about ideas like these and who wish to contribute their perspectives and talents to ITHAKA’s mission. We enthusiastically welcome applications from people of all backgrounds and credentials. We want to hear your story and include your perspective in the transformative work we aim to do.

Learn more about Working at ITHAKA.

Apply Now

Although ITHAKA has physical offices in New York and Ann Arbor, Michigan, our employees are distributed across the continental United States. At this time, we’re not considering candidates who are unable to work and reside in the continental U.S.

Candidates may apply by submitting an application online through our career site, if you have any questions about your application, please contact us at careers@ithaka.org.  ITHAKA is committed to providing reasonable accommodations, if there’s anything we can do to accommodate any portion of the application or hiring process, please contact us at accommodations@ithaka.org.

We are proud to be an Equal Opportunity employer.  All qualified applicants receive consideration for employment without regard to identity or other status protected by law. We invite you to read our Equal Employment Opportunity Statement. ITHAKA cares about your privacy, learn more about our Applicant Privacy Notice.