Principal Software Engineer/Developer

Fidelity InvestmentsWestlake, TX
10hHybrid

About The Position

Position Description: Develops REST services and works with enterprise messaging systems -- ActiveMQ and Kafka. Works with Docker, cloud-computing, and cloud services platforms (Azure) to build, deploy, run, control, and update applications. Builds and deploys applications using Continuous Integration/Continuous Deployment (CI/CD) tools -- Jenkins, Maven, and uDeploy. Runs and tests applications and ensure functionality, using JUnit, Cucumber, and Karate. Performs complex queries using PL/SQL. 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 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) designing and developing Cloud-native business critical applications according to event-driven and micro-service architecture, in a financial or brokerage domain.
  • 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) designing and developing Cloud-native business critical applications according to event-driven and micro-service architecture, in a financial or brokerage domain.
  • Demonstrated Expertise (“DE”) analyzing, designing, coding, debugging, writing unit tests, automating testing, and releasing scalable JEE/J2EE applications; delivering Web applications using Object Oriented (OO) principles and design patterns to develop performant and large scale distributed enterprise applications that increase while delivering business requirements; and building highly scalable Spring Boot Microservices with RESTful architecture, using JSON data interchange format and Spring Data (for persistence).
  • DE performing DevOps engineering -- CI/CD (using Jenkins and uDeploy), version control (using Git), and writing automated tests (using Cucumber or Karate) to build and deploy seamless application processes by running automation tests to validate software functionality.
  • DE developing Azure cloud components -- Azure Functions, Azure Service Bus, Azure Blob Storage, Azure Kubernetes Service (AKS), SQL Database in Azure, Cache for Redis, and Azure SDK’s – to perform event–driven, serverless platforms, faster application development and scaling application performance simply and cost-efficient.
  • DE performing database design and development using relational and NoSQL (Cassandra and MongoDB) databases; developing Java middleware applications using data integration tools -- ActiveMQ, Kafka and RESTful Web services for message driven microservices architecture that process changing un-structured data across multiple platforms; writing database schemas using SQL; writing database stored procedures using PL/SQL; and performing database operations using persistence frameworks -- JPA and Hibernate.

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