Principal Software Engineer/Developer

Fidelity InvestmentsAlbuquerque, NM
1dHybrid

About The Position

Position Description: Develops software applications using Java, C#, .Net, JavaScript, Spring MVC and Core, XML/JSON, NodeJS, and Angular frameworks. Develops and delivers technical data solutions and applications in an Agile environment. Implements Continuous Integration/Continuous Deployment (CI/CD) to automate application pipelines. Designs applications using DevOps best practices and tools – Maven, Jenkins, uDeploy, Docker, GIT, Artifactory, Sonar, Veracode, and Kubernetes. Uses business knowledge to translate the vision for divisional initiatives into business solutions by developing complex or multiple software applications and conducting studies of alternatives. Analyzes and recommends changes in project development policies, procedures, standards, and strategies to development experts and management.

Requirements

  • Bachelor’s degree (or foreign education equivalent) in Computer Science, Engineering, Information Technology, Information Systems, Mathematics, Physics, or a closely related field and five (5) years of experience as a Principal Software Engineer/Developer (or closely related occupation) developing and delivering technical data solutions in a financial service environment.
  • Or, alternatively, Master’s degree (or foreign education equivalent) in Computer Science, Engineering, Information Technology, Information Systems, Mathematics, Physics, or a closely related field and three (3) years of experience as a Principal Software Engineer/Developer (or closely related occupation) developing and delivering technical data solutions in a financial service environment.
  • Demonstrated Expertise (“DE”) defining, developing, and delivering Single Page Application (SPA), Web-based Applications, and Client Server Applications in JAVA/J2EE environments using design patterns.
  • DE migrating on-premise applications with user data to a modern cloud-based architecture using Microservices, Containerization with Docker, Distributed Databases Strategies, and Messaging Queues using Kafka.
  • DE developing and supporting enterprise application using programming languages -- Java, .Net, and Python.
  • DE applying Continuous Integration/Continuous Deployment (CI/CD) practices on database releases and automated deployments, using ECS, EKS/Docker, Jenkins and Urban Code Deploy (uDeploy); applying software development best practices -- source code management (using Git and Bitbucket); and driving epics, stories, and tasks, using project management methodologies (Agile, Scrum, or Kanban) and Jira.

Responsibilities

  • Participates in architecture design teams.
  • Defines and implements application level architecture.
  • Develops applications on complex projects, components, and subsystems for the division.
  • Recommends development testing tools and methodologies and reviews and validates test plans.
  • Responsible for QA readiness of software deliverables.
  • Develops comprehensive documentation for multiple applications or subsystems.
  • Establishes full project life cycle plans for complex projects across multiple platforms.
  • Advises on risk assessment and risk management strategies for projects.
  • Plans and coordinates project schedules and assignments for multiple projects.
  • Provides technology solutions to daily issues and technical evaluation estimates on technology initiatives.
  • Advises senior management on technical strategy.
  • Mentors junior team members.
  • Performs independent and complex technical and functional analysis for multiple projects supporting several divisional initiatives.
  • Develops original and creative technical solutions to on-going development efforts.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service