Sr Software Engineer
Houghton Mifflin Harcourt
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. For more information, visit www.hmhco.com
Sr. Software Engineer
Sr. Software Engineering at HMH HMH Software Engineer is a mid level position with expectations for both technical leadership, and a force to grow and sustain HMH’s positive, high energy technology company culture. The Software Engineer creates high-quality craftsmanship-level software for HMH clients and internal users, and are expected to be experts in the software languages used or required by HMH. This includes meeting all requirements/specifications, testing/QA requirements, methodologies and other HMH software/product requirements. This position must be adaptable to changing technology environments, and work collaboratively with all participants in a software development project. The Software Engineer may be called upon to fulfill functions related to software development that are not specifically software programming, such as requirements gathering, producing documentation, quality assurance testing, mentoring other developers, and leading projects. This position provides technical guidance and serves as a mentor/resources to the more junior level Software Engineer roles.
Responsibilities:
• Create prototypes to help clarify software requirements
• Create realistic design specification documents from software requirements
• Plan and perform development tasks from design specifications
• Provide accurate time estimates for development tasks
• Construct and verify (unit test) software components to meet design specifications
• Collaborate with quality assurance engineers to resolve software defects
• Provide feedback on software design, construction, development methodologies, and best practices.
• Participate in creating standards and ensuring team members adhere to standards, such as security patterns, logging patterns, etc.
• Perform code reviews of constructed software deliverables
• Collaborate with project architects and assist team members to prove the validity of new software technologies
• Engage and improve HMH’s software development methodology.
• Promote AGILE processes among development and the business, including facilitation of SCRUM.
• Perform other duties as assigned to ensure the success of the team and the entire organization
Skills & Experience:
• Excellent object-oriented design & programming skills, including the application of design patterns and avoidance of anti-patterns
• Experience working in a collaborative team of application developers and source code repositories
• Demonstrated ability to follow through with all tasks, promises and commitments
• Ability to communicate and work effectively within priorities
• Ability to advocate ideas and to objectively participate in design critiques
• Ability to work under tight timelines in a fast-paced environment
• Advanced understanding of software design concepts
• Understanding of software development methodologies
• Experience using cloud-based database architectures such as AWS RDB and snowflake.
• Experience with Tableau Development
• Deep understanding of SQL server and stored procedures.
• Experience with python development
How We Work (Competencies)
• Instills Trust – Gaining the confidence and trust of others through honesty, integrity, and authenticity.
• Drives Results – Consistently achieving results, even under tough circumstances.
• Collaborates – Building partnerships and working collaboratively with other to meet shared objectives.
• Focuses on Customers – Building strong relationships and delivering customer-centric solutions.
• Learns Nimbly – Actively learning through experimentation when tackling new problems, using both successes and failures as learning fodder. Education and Experience
• Minimum Bachelor’s degree in computer science or a related field; or an equivalent combination of education and experience will be considered in lieu of a degree
• At least 5 years of progressive experience in a software development environment in high growth technology companies
• Proven experience with multiple completed projects with significant, clearly attributable individual design and implementation contributions.
• Proven experience working across multiple tiers of an application, including a database, network, operating system, and containers.
• Deep knowledge of more than one programming language or technology stack.
• Demonstrable mastery of SQL.
HMH Technology Private Limited is an Equal Opportunity Employer and considers applicants for all positions without regard to race, colour, religion or belief, sex, age, national origin, citizenship status, marital status, military/veteran status, genetic information, sexual orientation, gender identity, physical or mental disability or any other characteristic protected by applicable laws. We are committed to creating a dynamic work environment that values diversity and inclusion, respect and integrity, customer focus, and innovation. For more information, visit https://careers.hmhco.com/. Follow us on Twitter, Facebook, LinkedIn, and YouTube.