Principal Software Engineer/Developer

Fidelity Investments is a privately held, Boston-headquartered financial services company providing investing, trading, retirement, wealth management, brokerage, workplace benefits, custody and clearing, and digital-asset services.

Boston, Massachusetts, United States
About Fidelity Investments

Fidelity serves individual investors, employers, wealth-management firms, institutions, innovators, and charitable donors through diversified financial-services businesses. Current offerings include brokerage and trading, mutual funds and exchange-traded products, retirement and workplace savings, financial planning and advice, wealth management, institutional custody and clearing, and crypto/digital-asset products.

View jobs by Fidelity Investments

Skills

Candidate Availability

Required and preferred rules are kept separate and reflect the wording in the original posting.

About the Role

You will design and implement application architecture, develop complex software applications, and deliver scalable solutions. You will build front-end and back-end services, deploy cloud applications, improve testing and delivery practices, plan project lifecycles, manage technical risks, advise stakeholders, and mentor junior engineers.

Requirements

  • Bachelor's degree and five years of relevant experience, or a master's degree and three years of relevant experience
  • Experience developing and maintaining scalable Kafka and Spring-based applications in a multi-system integration environment
  • Java, Spring Boot, Spring Cloud, and microservices expertise
  • Kafka, Oracle PL/SQL, REST API, SOAP, XML, and event-driven architecture expertise
  • Docker, Kubernetes, AWS, Jenkins, GitLab CI, UC Deploy, Ansible, and Terraform expertise
  • JUnit, Mockito, JaCoCo, SonarQube, Datadog, and AWS CloudWatch expertise
  • Experience with Node.js, Angular, React, Python, SQL, and UI development

Responsibilities

  • Participate in architecture design teams
  • Define and implement application-level architecture
  • Develop applications for complex projects, components, and subsystems
  • Recommend testing tools and methodologies and validate test plans
  • Ensure QA readiness of software deliverables
  • Develop application and subsystem documentation
  • Establish project life cycle plans
  • Meet project goals on time and on budget
  • Advise on project risk assessment and management
  • Plan and coordinate project schedules and assignments
  • Resolve project and technology issues with business units
  • Advise senior management on technical strategy
  • Mentor junior team members
  • Perform technical and functional analysis
  • Develop technical solutions for ongoing development efforts

Benefits

  • Fully paid parental leave
  • On-site health and wellness centers