McGraw Hill logo

McGraw Hill

Lead Software Engineer

🇺🇸 Remote - US

🕑 Full-Time

💰 $114,000 - $170,000

💻 Software Engineering

🗓️ February 7th, 2024

Go TypeScript AWS Lambda
Impact the Moment

We’re looking for people who like problem solving, exhibit independent creativity, and function cooperatively on a team. As a team member at McGraw Hill, you have a sense of personal accountability, a curiosity to research new technologies and methodologies, and a pervasive desire to dig into complex issues while respecting timelines and team commitments. By building the next set of platform capabilities and a wealth of interactive and engaging digital resources, you will support instruction for our newest programs and products at McGraw Hill.

Your impact on team:

At McGraw Hill, a team’s engineers look up to, admire, and trust their lead. Leads contribute directly to the codebase and mentor other team members. They have a strong desire and motivation to grow the individuals on their team and the team. Leads are opinionated and back up their opinions with data and experience. Leads are advocates for their team members and have as much interest on individual successes on the team as they do of the team’s success. Leads build trust by fostering a welcome, supportive, and humble environment, not through dictation, arrogance, or brute force.

We believe leads function best when they can focus on their team and technology and not be burdened with “traditional” management responsibilities, so our leads do not have direct reports. We foster career growth, so if it turns out you want to manage people, we can make it work!

As your hands-on contributions, you will build front-end web interfaces and back-end application code and APIs across our portfolio. This is a “full stack” role, so we are looking for people with experience in both front-end and back-end modern web development.

What You’ll Do:

  • Work with a team of individual contributors through leadership and delegation, along with your own hands-on contributions, to build our web applications, including building entirely new applications, making major product updates, and maintaining our existing portfolio. Our products at McGraw Hill are used by millions of people every day. Some have an SLA of 99.99% uptime; stability and quality solutions are key!
  • Work with product, engineering, SRE, and other leadership to understand how your solutions will be planned, developed, implemented, and supported.
  • Contribute to CI/CD processes to allow for smoother releases and increasing team confidence.
  • Use your interpersonal skills and ability to collaborate effectively with product sponsors and senior leadership in engineering and the greater business.
  • Understand the business requirements of products, tasks, and stores, and if you identify possible gaps, ambiguities, missing scenarios, opportunities, etc., raise them with the team and with leadership so we can all improve them.
  • Work with a distributed team to solve problems quickly and collaboratively.
  • Consider the full lifecycle of solutions when building them from initial conception to launch then maintenance all the way to sunsetting.
  • Mentor junior engineers to help grow their professional careers.

About You:

  • You have led a team of individual contributor engineers, having come from an engineering background yourself. You have empathy for engineers and balance that with realities of the business. Your desire to lead is intrinsic; you aren’t chasing a title or feel you “have” to be a lead because a career path forces it.
  • You interface well with other business units and leadership, being able to “in English” describe situations and technical approaches to foster an environment of trust and confidence.
  • You have deep expertise developing both front-ends and back-ends of modern web applications and have a general understanding what is involved in front-end development as well. Aligning with our stack (described further in this posting) is nice, but diversity of experience is better.
  • You build front-ends with the needs of our users in mind, partnering with our UX team members to build the best experiences for our teachers, students, and other personas.
  • You consider the needs of accessible designs in all steps of the engineering process for those with visual, auditory, sensory, cognitive, and other considerations.
  • You design APIs that are meant to be consumed by others, so ease of use, simplistic design, and other attributes that benefit interoperability are key.
  • You believe in understanding why work is being done and empathizing with the users, not just implementing code and moving onto the next task.
  • You are outspoken in your beliefs while being able to back them up with experience and objective data.
  • You have demonstrated software delivery experience with a distributed product & engineering team.
  • You can work in a fast-paced software release environment, where you continuously deliver production-grade (near-zero downtime, fault-tolerant, etc.) software daily for a system with millions of users around the world. Our users want systems that “just work” and are mission critical. Teachers are busy and don’t have time to tinker with a system to make it work!
  • You have contributed to the full software development life cycle, including writing application code, unit/integration/automation tests, documentation, and performance and security engineering.

We have a very diverse stack that can vary across teams and projects. Some of the technologies we use include:

  • Back-end: Go (most common), Java, Node.js, PHP
  • Front-end: TypeScript, Angular, NgRx/RxJS, and Playwright
  • CI/CD and Infrastructure: CircleCI, Sonarqube, Docker, Kubernetes, Github and NewRelic
  • Amazon Web Services (AWS): ECS, RDS, Lambda, and many other services
  • Collaboration: JIRA, Confluence, Zoom, Slack, and Office 365
  • Databases: Relational databases such as MySQL and PostgreSQL; NoSQL databases such as DynamoDB

Why McGraw Hill?

  • We firmly believe in the mission of educating students and helping them succeed.
  • Our teams operate in a collaborative and safe environment where everyone’s input is valued, trusted, and respected. We want to know what you think; we don’t want “feature farms!”
  • You’ll have opportunity for horizontal and vertical movement and growth throughout the organization, including clear career paths for your long term personal and professional growth. We hire good people rather than filling team vacancies or checking boxes for technical skillsets.
  • We have a mindset of “deliver value, not features”: we produce meaningful products and services for our students, teachers, administrators, and others that further our educational mission rather than focus on just executing a JIRA ticket number; we “see the forest, not the trees”

The pay range for this position is between $114,000 - $170,000 annually, however, base pay offered may vary depending on job-related knowledge, skills, experience, and location. An annual bonus plan may be provided as part of the compensation package, in addition to a full range of medical and/or other benefits, depending on the position offered. Click here to learn more about our benefit offerings.

McGraw Hill uses an automated employment decision tool (AEDT) to assist in the screening process by recommending candidates with “like skills” based on resume and job data. To request an alternative screening process, please select “Opt-Out” when asked to “Consent to use of Automated Employment Decision Tools” during the application.