Director of Software Engineering
The Group: Morningstar brings people together with a singular goal in mind—to empower investor success. From individual investors to portfolio managers—we live to create transparency, always focused on bringing clarity to complexity and creating tools that support millions of investors in ways that excite, inform and create long-term success. The Workplace group’s mission is to put employees on the path to financial freedom and security, driving better financial and retirement outcomes for employees and designing unique solutions that help solve our clients’ current and future problems.
The Role: As a Director of Software Engineering on the Managed Accounts team, you will be a self-starter who gets technology as an art, understands business goals and skillfully guides your team to create scalable, flexible technical solutions. You will be responsible for high-quality custom software delivery and ensuring modern software development practices are being applied with rigor. You will motivate the team and cultivate a culture of high energy and technical excellence. Establishing a good support infrastructure to handle production issues and being responsive to customer problems is essential to the role. Hands-on engineering experience in large-scale system implementation and cloud-native architecture is required. While you understand that guiding the engineering team is important, you’re not afraid to “get your hands dirty” and lead problem-solving or innovation efforts at a detailed level. This position is based out of our headquarters in Chicago and reports to Head of Automated Advisory Products.
Responsibilities:
• Act as the software guardian; partner with the technology architects to own non-functional requirements, system direction, quality of the code and addressing technical debt
• Develop and cultivate strong domain expertise in Retirement Managed Accounts systems, clients, and business
• Guide day-to-day technical decision making and coordinate timely response to production issues and escalations
• Coach software engineers to increasing levels of professional development, engineering proficiency, and software engineering best practices
• Work across multiple teams and squads
• Understand and unlock team members’ intrinsic motivations and create a strong culture of engineering excellence
• Perform workforce management activities including interviewing, hiring, onboarding, termination, forecasting, performance calibration, and compensation reviews
• Collaborate with local & global teams for both technical and non-technical issues
• Cultivate technical backlog with team leads and architects to maintain, upgrade, scale, and secure platform continuously
• Ensure that fault tolerance, business continuity, and operational readiness are built into the system
• Foster a team environment of innovative thinking, embracing change, and attitude to constructively challenge status quo
Requirements:
• 15+ years of experience in progressively senior software engineering roles
• 5+ years of experience working on custom software development teams using Agile/Scrum methods
• 5+ years of experience performing people management responsibilities
• 5+ years of experience with Amazon Web Services and/or Microsoft Azure
• Knowledge of multiple modern programming languages (specifically Java and .NET) and related frameworks
• Great understanding of building RESTful APIs and creating SOA applications
• Solid understanding of and ability to mentor software engineering best practices ((code reviews, secure code, DevOps principles, test driven development, reusable code, CI/CD, etc.)
• Knowledge of industry wide technology trends and best practices
• Experience in operations and managing live production applications, monitoring, remediation and incident management
• Ability to work in large, collaborative teams across geographic borders
• Experience designing and developing solutions that are highly reliable, scalable, and perform to meet business-defined service levels
Preferred Qualifications:
• Experience building custom software products in the financial sector (commercial or investment banking, capital markets, insurance, tax, etc.)