Lead or Senior Software Engineer

ITHAKA Logo

ITHAKA

πŸ’΅ $108k-$148k
πŸ“Remote - Worldwide

Summary

Join ITHAKA, a mission-driven organization expanding access to knowledge and education globally, as a Lead or Senior Software Engineer. You'll contribute to high-impact products used by millions, leveraging technologies like AWS, Kubernetes, and Java. This role demands full-stack expertise, collaboration within an Agile team, and continuous deployment. ITHAKA offers competitive salaries, comprehensive benefits, and a commitment to a diverse and inclusive workplace. The position allows for remote work within the continental US. Depending on experience, the role can be at a Senior or Lead level, with specific requirements for each.

Requirements

  • 2 to 5 years of experience as a full-stack software engineer building large-scale, distributed web applications
  • Experience with cloud infrastructure services–and AWS in particular
  • Experience creating and operating backend services using languages like Python, Java, or JavaScript/TypeScript with frameworks like Fast API, NodeJS or Spring Boot
  • Experience 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
  • Experience using a decentralized version control system like Git in a collaborative context on a platform like GitHub or GitLab
  • Experience 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
  • Experience mentoring other engineers in a technical and interpersonal capacity
  • Exceptional communication, thoughtfulness, and desire to give and receive regular feedback
  • An additional 3 or more years of professional experience, for a total of 8 or more years of experience as a full-stack software engineer building large-scale, distributed web applications

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

Preferred Qualifications

  • Experience utilizing Open Search for powering ML based solutions
  • Experience using profiling tools to analyze and optimize application performance like Graphite, Grafana, and Prometheus
  • Experience with cache management, content delivery, and application security at the edge using CDNs like Fastly or CloudFront
  • Experience 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
  • Experience with serverless and event driven architecture

Benefits

  • 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

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.