Principal Software Engineer/Developer

Fidelity InvestmentsWestlake, TX
Hybrid

About The Position

Position Description: Builds and deploys cloud enabled applications using 12-factor design. Builds and deploys applications using Continuous Integration pipelines and automated deployment tools (Jenkins). Utilizes Angular for front-end development and integrates with Amazon Web Services (AWS) Cloud and containerization technologies (Docker and Kubernetes), and SQL and stored procedures. Leverages Spring, REST/Web Services, Maven, TypeScript, XMA, Apache Tomcat, Swagger, and Message Queue to build scalable, resilient, Cloud-based systems. Develops or directs software system testing or validation procedures, programming, or documentation. 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. Develop automation and workflow solutions using Microsoft power platform, including Power Apps and Power Automate.

Requirements

  • Bachelor’s degree in Computer Science, Engineering, Information Technology, Information Systems, or a closely related field (or foreign education equivalent) and five (5) years of experience as a Principal Software Engineer/Developer (or closely related occupation) developing and maintaining Web applications, using Java, Spring Boot, and Angular in a capital markets environment.
  • Or, alternatively, Master’s degree in Computer Science, Engineering, Information Technology, Information Systems, or a closely related field (or foreign education equivalent) and three (3) years of experience as a Principal Software Engineer/Developer (or closely related occupation) developing and maintaining Web applications, using Java, Spring Boot, and Angular in a capital markets environment.
  • Demonstrated Expertise (“DE”) developing enterprise-grade Spring Boot applications using persistence frameworks (Hibernate or JPA); developing batch modules for bulk data processing using Java, Spring Boot, multithreading, and ExecutorService; performing Spring framework upgrades and implementing security and authentication, using Spring Security with OAuth2; and performing application modernization, Cloud migration, and optimization of applications to support scalable and high-performance architectures in AWS and Google Cloud Platform (GCP).
  • DE developing Application Programming Interfaces (APIs) and data capabilities to support high-performance and scalable systems within a financial services environment (including capital markets), using distributed data technologies; and designing Web-based applications with a microservices architecture hosted on Cloud infrastructure (AWS and GCP), using REST APIs, HTML5, JavaScript, or Angular, while ensuring maintainability, reusability, and scalability.
  • DE developing microservices to translate and transmit real-time data, using Spring, Redis, and Kafka; designing and developing AWS Lambda functions and GCP Cloud functions to fetch and process data from external REST APIs using Java and RESTful services; deploying and maintaining services in AWS Elastic Kubernetes Service (EKS), GCP Kubernetes Engine, and AWS Lambda; implementing event-driven architecture for real-time processing; and designing enterprise Web applications and creating Confluence pages for documentation and knowledge management.
  • DE programming and developing code using Java, Node.js, Kafka, AWS, GCP, and Elastic; writing build scripts using Maven; performing static code analysis using SonarQube; conducting unit testing using JUnit; performing data validation and monitoring using Oracle Database and Splunk; troubleshooting memory leaks and performance issues using VisualVM; and mentoring and guiding development teams on best practices, coding standards, and application optimization.

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.
  • Responsible for meeting project goals on-time and on-budget.
  • Advises on risk assessment and risk management strategies for projects.
  • Plans and coordinates project schedules and assignments for multiple projects.
  • Acts as a primary liaison for business units to resolve various project/technology issues.
  • 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