Senior Software Engineer
The Group: The Product Capabilities group is a product development organization that provides software platforms, services, and components fueling Morningstar’s product portfolio across client segments. This diverse set of teams develop software for truly differentiated capabilities, including robo-advice engines, analytics products, investment research software, portfolio software, financial planning tools, and investment reports. This group is also responsible for Morningstar’s web-based “Cloud” and native-app “Mobile” platforms, and many of the component and service standards across software teams. Nearly every Morningstar product leverages something from the capability teams, whether as a building block or an entire application. We build software users love, at scale.
The Role: Are you looking for an exciting opportunity to blend Cloud, Engineering, and DevOps skills? Morningstar is looking for a talented software engineer to focus on our API platform. Gone are the days of data tightly coupled to desktop applications. Today our browser-based software runs on API engines fueled by a world-class database. These APIs power our own software, but are also available to external institutions that want the benefit of the value-add calculations while still owning the front-end user experience themselves. APIs don’t come free however, and there’s technical systems and processes to design and build in or to support managing, integrating, and deploying APIs. Sounds exciting, right? Here’s your chance to join the SaaS revolution! This role reports to our Senior Application Architect responsible for API and Component standards, and is located at Morningstar Headquarters in Chicago.
Responsibilities
- Contribute to our cloud-based API management platform, which leverages technologies from AWS such as API Gateway, Lambda, and DynamoDB to provide functionality for consumers and API development teams.
- Facilitate methodology change to design-first, API-first, and API as a Product through improved standards and tools.
- Enforce good Agile practices (using JIRA) including test-driven development and continuous integration.
- Apply DevOps practices in area of continuous and automated deployment.
- Analyze and remediate production issues, and build instrumentation and operational readiness into the systems architecture.
- Be passionate about quality, process, programming, and investing in general, seeing opportunities for improvement, seizing them, and then sharing your findings with others.
- Help to shape product vision.
Requirements
- A bachelor's degree in computer science or a related field.
- Three plus years of experience developing or supporting commercial quality software.
- Solid experience with REST API design and development, preferably in one of the following languages: Node.js, Java, .NET.
- Familiarity with cloud technology and serverless architecture. Some AWS services our engineers work with: Route 53, API Gateway, Lambda, DynamoDB, ElasticSearch, S3, Cloudfront, CloudWatch.
- Exposure and/or experience with Infrastructure as Code and related tooling, such as Terraform.
- An understanding of how to protect web services from common security vulnerabilities.
- Knowledge of object-oriented design, domain modeling, and building highly scalable and available systems.
- Be organized and able to remain productive even when you have multiple deliverables.
- Interest in and focus on building innovative products and services that users love.
- Bachelor’s degree in computer science, business, or related field.