
Overview
HMH is a learning technology company committed to delivering connected solutions that engage learners, empower educators and improve student outcomes. As a leading provider of K–12 core curriculum, supplemental and intervention solutions, and professional learning services, HMH partners with educators and school districts to uncover solutions that unlock students’ potential and extend teachers’ capabilities.
HMH serves more than 50 million students and 4 million educators in 150 countries. HMH Technology India Pvt. Ltd. is our technology and innovation arm in India focused on developing novel products and solutions using cutting-edge technology to better serve our clients globally. HMH aims to help employees grow as people, and not just as professionals.
Software Engineering at HMH
Software Engineering at HMH is focused on building fantastic software to meet the challenges facing teachers and learners, enabling and supporting a wide range of next generation learning experiences. We design and build custom applications and services used by millions. We are creating teams full of innovative, eager software professionals to build the products that will transform our industry.
We are staffing small, self-contained development teams with people who love solving problems, building high quality products and services. We use a wide range of technologies and are building up a next generation microservices platform that can make our learning tools and content available to all our customers.
If you want to make a difference in the lives of students and teachers and understand what it takes to deliver high quality software, we would love to talk to you about this opportunity.
Technology Stack
You'll work with technologies such as ASP.Net MVC, Web API, C#, Microservices, Windows Services, MySQL, Jenkins etc.
This will be a hands-on coding role working as part of a cross-functional team alongside other developers, designers and quality engineers, within an agile development environment. We’re working on the development of our next generation learning platform and solutions utilizing the latest in server and web technologies.
About the role:
- You have proven experience leading teams of software engineers to design and deliver major software components
- You enjoy actively contributing code, working with your cross-functional full-stack teams within an Agile development environment
- You are able to contribute to technical leadership, collective ownership and delivery of component design, development and maintenance
- You can collaborate across functional development teams to solve problems, transfer knowledge and contribute to overall product architecture (Microservices)
- You pro-actively architect components, look ahead and avoid pitfalls for the team
- You drive quality by initiating and managing code reviews
- You will be responsible for leading your team of 7-12 software engineers to deliver major software components and services, collaborating with other teams and functions to align solution delivery across the Technology Solutions Group
- You will help build a collaborative, motivated, interdependent team who will work with product, design and architecture teams in the delivery of software products
- You will ensure effective communication of solutions within the Engineering group and its stakeholders in the US, Canada, Europe and India
- You will use your engineering knowledge to identify and solve problems and to foresee potential issues and risks. You will manage risks within your team and ensure effective escalation of issues which impact other teams to your manager
- You will promote a positive culture that stimulates innovative approaches to solving problems. You encourage proactive, open communication and collaboration within your team
- You will ensure high quality standards and practices are followed in your team and the end product is robust, high-availability best-in-class software applications.
- 8 to 10 years' experience in a relevant software development role
- Experience with architectural concepts such as microservices and separation of concerns
- Experience with container technologies such as Docker and Kubernetes
- Experience with Database and Caching technologies such as MySQL, MongoDB, and Redis
- Experience with development tools such as GitHub and Jira
- Experience with cloud technologies such as AWS
- Experience in Test Driven Development and automated testing tools like NUnit, Cucumber, and SonarQube
- Degree or Master’s in Computer Science or relevant discipline OR relevant work experience