McGraw Hill Education Sr. Software Engineer NY / Boston in Boston, Massachusetts
Build the future!
Do you love working at the cusp of digital technology and building products that are impacting millions of learners and educators every day? At McGraw Hill, we are developing intuitive, smart, and AI/ML based digital learning products that are changing the way education happens!
Working in our Digital Platform Group (DPG), you will constantly thrive on a variety of new skills. You will be developing analytics-based products for A&R, driving all big data initiatives, working on spark structured streaming to build datalake/datamart, collaborating with data scientists to push Machine Learning models into production, and using graph database, neo4j.
How can you make an Impact?
As Senior Software Engineer within our Analytics and Reporting (A&R) team, you will provide technical expertise and leadership in developing our core data ingestion, processing, and API platform built in Spark/Scala, and will contribute to shaping the future of education technology by enabling advanced analytical insights across all McGraw Hill products.
What can you expect from the position?
Developing applications in Scala and Spark which ingest and process millions of behavioral events from products and components in the McGraw Hill ecosystem, in real-time.
Creating highly efficient and scalable structured streaming workloads which can handle complex joins and aggregations across multiple streams, while handling data issues such as out of order data and late/missing data, on large in-memory dataframes.
Developing solutions and contributing to architectural decisions across the entire data infrastructure, from event ingestion (Kafka) to data modeling/warehousing (Postgres, Neo4J)
Providing technical leadership across several teams with a focus on strong engineering discipline, including data-driven planning, automated testing, code reviews, continuous integration, and building the right thing, the right way, at the right time.
Providing full-stack support of legacy applications using (node.js, lambda functions, elastic search) serving MHE customers.
Researching production issues, working with colleagues for quick solution, ingesting data and building data-lake that can store/process all McGraw Hill product events being generated daily.
Prototyping with emerging technologies to continuously improve data freshness, accuracy, and value for our customer teams.
What can you bring to the role?
Experience in object-oriented programming, Java, and hands-on Spark or Scala.
4-5 years of experience in developing applications with Spark/Scala, microservices in AWS ecosystem.
Strong understanding of database architectures, including row and column stores, data lake topologies.
Hands-on work ethos, including ability to jump into multiple areas and help engineers get things done.
Experience implementing software systems for applications developed with cloud technologies (AWS) and Linux.
Familiarity with the Agile methodology and tracking tools (Jira).
Excellent interpersonal skills, the ability to collaborate with teams, as well as excellent verbal and written communications.
As an education innovation company, we're proud to play our part by inspiring learners around the world. If you bring your curiosity, we'll help you grow in a collaborative environment where everyone shares a passion for success.
Are you ready for a new challenge? Apply for a career at McGraw Hill and together, we'll impact the world.