Principal Software Engineer
Job Description
Morningstar believes in empowering investors through research, data, design, and technology. Morningstar being a leading global provider of independent investment research, is looking for an innovative and passionate individual to serve as a Principal Software engineer in Morningstar's Research Products business. Research Products delivers Morningstar's research content through a suite of product lines as well as through shared service platforms which provide research content and comprehensive research workflows to Morningstar's branded software products. We surface Morningstar's content and insights to retail investors, financial advisors, investment selection and due diligence teams, and other financial professionals. We aim to provide a first-class experience in accessing, analyzing, and reporting on Morningstar research and data. We are deeply inquisitive; we do not take "that's just the way it's always been done" or "that's just best practice" as valid answers and instead seek to fine-tune our product development process for maximum impact. We are empowered professionals who are given problems to solve and not tickets to implement. We value team productivity over individual productivity and this culture of "giving" means we enjoy and highly value collaborating with our teammates.
About the Role
We are looking for a Principal Software Engineer who is experienced and specialized in full stack development on modern cloud-based infrastructure. As a Principal Software Engineer, you will be responsible for creating technical design and architecture for solutions that are secure, scalable and extensible. You will work up and down the stack, on a cross functional, product development team, shaping the technical direction of Morningstar Research products.
Job Responsibilities
- Primarily act as a multiplier by building systems, authoring tools, or introducing policies or patterns that raise the level of productivity of the team or larger group.
- Sound decision making that has a direct impact on the long-term success of the product.
- Consistently able to reduce the complexity of projects, services, and processes in order to get more done with less work.
- Shape broad architecture; ship multiple large services, complex libraries or major pieces of infrastructure.
- Anticipate technical issues at the product level and make architectural and design decisions to avoid them.
- Advocate best practices for performance, scalability, reliability, security, reusability, expandability, and cost-efficiency at a global scale.
- Be the Mentor/technical coach for the team, championing adoption of best practices.
- Partner with senior product and technology development management to build tactical and strategic roadmaps for technology.
- Own technology standards, architectural direction, technical documentation, and quality of the code.
- Maintain the highest levels of security, promoting a culture and practice of security awareness.
- Assess and monitor the impact of new technologies on our markets and product lines.
Qualifications
- Friendly and enjoys working in a collaborative team with excellent spoken and written communication skills. Humble, honest, and to the point.
- Bachelor of Science in Computer Science, Engineering, or equivalent experience.
- 10+ Years of Experience in Software Development, Design, and Architecture.
- Demonstrated experience defining, refining, and maintaining application architectures for sophisticated end-user software products.
- Expert in Cloud Architecture and deeper understanding of cloud computing, preferred AWS (or Azure, GCP)
- Experience with agile principles including test driven development and CICD.
- Creative thinker with ability to solve complex problems.
- Experience scaling web-based software applications and services.
- Strong proficiency in building and consuming RESTful API's.
- Knowledge of scalable architectures
- Knowledge of security best practices
- Knowledge of Web UI componentization
- Knowledge of any backend development in C++, Java, C#, Node.js, or Python and the ability plus willingness to adopt any languages
- Excellent self-study skills
Nice to have
- Experience with designing Microservices or serverless applications.
- Experience with automated infrastructure configurations and orchestration. We use CloudFormation, Docker, serverless.
- Experience with SQL and non-SQL databases.
- Experience with Amazon Web Services technologies like Serverless/Lambdas, API gateway, ECS, KMS/IAM, CloudFront, EC2.
001_MstarInc Morningstar Inc. Legal Entity
Date Posted
08/14/2022
Views
5
Similar Jobs
Sr. Software Engineer - OEMS Team - Enfusion
Views in the last 30 days - 8
Enfusion is a pioneer in developing innovative cloud investment management software analytics and managed services They help fund managers streamline ...
View DetailsSoftware Engineer 431407 - Experfy
Views in the last 30 days - 8
The job description is for a Software Engineer position that requires designing developing testing and deploying software systems and applications The...
View DetailsSoftware Product Consultant - CSC Corptax
Views in the last 30 days - 10
The job description is for a fulltime consultant to join the Corptax Professional Services Team The consultant will provide implementation and best pr...
View DetailsMachine Learning Engineer - Oak Street Health
Views in the last 30 days - 8
Oak Street Health is a rapidly growing company that is looking for a machine learning engineer to support their production modeling efforts The compan...
View DetailsAssociate Principal, Windows Services - OCC
Views in the last 30 days - 5
The job posting is seeking a Windows server engineer to administer and enhance the Windows server infrastructure The successful candidate must have pr...
View DetailsAssociate Principal, Site Reliability Engineering - OCC
Views in the last 30 days - 5
The job description is for a Site Reliability EngineerDevOps position at the Options Clearing Corporation The role involves supporting the availabilit...
View Details