Senior Software Engineer/Developer

Fidelity InvestmentsDurham, NC
8hHybrid

About The Position

Position Description: Develops cloud-native financial services platforms using modern technologies. Designs and implements multi-tier, multi-threaded software applications and translates divisional initiatives into effective business solutions. Develop software applications and troubleshoots using Java/J2EE, Spring Boot, RESTful APIs, Python, Apache Kafka, Docker, and Kubernetes on Amazon Web Service (AWS) following Test Driven Deployment (TDD) technologies. Enhances enterprise Cloud infrastructure with AWS EKS and solutions -- Lambda, SQS, S3, CloudWatch, and Identity and Access Management (IAM) roles and policies. Delivers high-quality, timely, efficient, and maintainable software solutions in an Agile environment to meet both functional and non-functional business requirements. Provides business solutions by participating in the development of moderately complex or multiple software applications.

Requirements

  • Bachelor’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 Senior Software Engineer/Developer (or closely related occupation) developing scalable and high-throughput enterprise-level services and middle-tier streaming applications using Java, Python, RESTful and Serverless APIs, and Apache Kafka in a microservice architecture.
  • Or, alternatively, Master’s degree in Computer Science, Engineering, Information Technology, Information Systems, or a closely related field (or foreign education equivalent) and one (1) year of experience as a Senior Software Engineer/Developer (or closely related occupation) developing scalable and high-throughput enterprise-level services and middle-tier streaming applications using Java, Python, RESTful and Serverless APIs, and Apache Kafka in a microservice architecture.
  • Demonstrated Expertise (“DE”) designing and developing scalable applications using Java/J2EE and Spring Boot; building and maintaining RESTful APIs to enable seamless communication between microservices and front-end components; facilitating high-throughput, fault-tolerant messaging using Apache Kafka; and optimizing data storage and retrieval using PostgreSQL and CockroachDB for distributed database operations.
  • DE designing and developing scalable applications using Python to ensure efficient and maintainable code; designing and deploying serverless solutions with AWS Lambda and Step Functions to orchestrate complex workflows; building and maintaining RESTful APIs using API Gateway for seamless integration and communication, integrated with IAM for robust access control and authentication; and leveraging AWS S3 for efficient data storage and Simple Queue Service (SQS) for reliable, asynchronous message processing.
  • DE architecting and optimizing Continuous Integration and Continuous Delivery (CI/CD) pipe-lines using Jenkins to streamline automated software delivery; working with infrastructure as code (IaC) using Terraform and orchestrating containerized applications using Docker and Kubernetes for scalable, resilient deployments; designing and maintaining high-performance, cost-efficient Cloud infrastructure, using AWS services; and implementing robust monitoring and logging solutions with Datadog and Splunk to ensure real-time system insights and rapid issue resolution.
  • DE developing unit tests using JUnit to ensure robust, maintainable, and high-quality code; creating precise mock objects for isolated and repeatable testing scenarios, using Mockito; performing in-depth code analysis, ensuring compliance with best practices and optimal code quality, using SonarQube; and developing automation tests with Cucumber to drive behavior-driven development, and delivering precise, executable test specifications.

Responsibilities

  • Develops original and creative technical solutions to on-going development efforts.
  • Designs applications on major, self-contained, projects.
  • Develops applications for multiple projects supporting several divisional initiatives.
  • Supports and performs all phases of testing leading to implementation.
  • Assists in the planning and conducting of user acceptance testing.
  • Develops comprehensive documentation for multiple applications.
  • Responsible for post-installation testing of any problems.
  • Establishes project plans for projects of moderate scope.
  • Works on complex assignments and often multiple phases of a project.
  • Performs independent and complex technical and functional analysis for multiple projects of moderate scope supporting several self-contained initiatives.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service