Principal Software Engineer/Developer

Fmr LLC
Jersey City, NJ, United States
about 2 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Experienced
Experience required
3 years minimum
Compensation
$165,000.0 - $181,000.0
Working hours
Regular working hours
Job source

Tech stack

Microsoft Word Java (Programming Language) Agile Methodology Algorithmic Trading Amazon Web Services Applications Architecture Component-Based Software Engineering Software Applications JIRA Automation of Tests Software Bug Management Unix
+41 more
C++ (Programming Language) Cloud Computing Information Systems Databases Continuous Delivery Continuous Integration Cron Linux Financial Information EXchange HP Application Lifecycle Management Systems Analysis Java Database Connectivity JSON Apache JMeter PostgreSQL Unix Shell Microsoft Visio Routing Parsing Selenium Shell Script Software Engineering System Testing Strategies of Testing TypeScript Data Processing Performance Testing Postman Cypress (Programming Language) Single Page Application AngularJS Kubernetes Information Technology Playwright Apache Kafka Front End Software Development Restful APIs Cucumber (Software) Selenium Webdriver Docker Jenkins

Job description

Develops and maintains automation testing suites using common industry platforms – Selenium, Cypress, Cucumber, Playwright. Utilizes Java, Angular and Single Page Application, JavaScript and Typescript to automate mobile, front-end, mid-tier, and back-end applications. 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., * 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.

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) performing system analysis, and creating and executing comprehensive test strategies for trading platforms in a financial services industry.

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) performing system analysis, and creating and executing comprehensive test strategies for trading platforms in a financial services industry.

Skills and Knowledge:

Candidate must also possess:

  • Demonstrated Expertise (“DE”) participating in system and application design, and creating application architecture, using Microsoft Word and Visio in a financial services environment; analyzing and interpreting business requirements and creating system test strategy and test plan, using test management tools (Jira X-Ray and HP Application Lifecycle Management (ALM)) in financial services environment; and performing analysis and testing production bug fixes, using Selenium WebDriver, FIX Protocol, Postman, and REST Assured in non-production environments.

  • DE creating and maintaining automation frameworks for functional and performance testing of customer facing trading applications and Internal Trading System (ITS) components, using Playwright, Java, KDB, PostgreSQL, and JMeter; designing and creating data comparison tools to compare data between sources and databases within the platform, using Java, KDB, JDBC, and PostgreSQL, in a non-production environment; and configuring Continuous Integration/Continuous Delivery (CI/CD) pipelines (using Jenkins) and reporting issues (using JIRA) in a non-production environment.

  • DE testing core trading system functions (order management, order crossing, order routing, and risk management) using FIX protocol, Java, Selenium WebDriver, Playwright, and testing tools, in a non-production LINUX environment; testing and debugging containerized trading applications deployed in Amazon Web services (AWS) Cloud environment and integrated with On-Prem applications, using Docker, FIX Protocol, Kubernetes, PostgreSQL, and Kafka in non-production environments – QA and UAT; and validating market data systems and REST APIs by creating automated solutions, using Java, FIX Protocol, JSON/FIX Parsers, and REST Assured in non-production environments (DEV, QA, and UAT).

  • DE setting up non-production environment by installing back-end components built in C++ and Java, using shell scripts and UNIX Cronjobs in UNIX non-production environments (Development, Development Integration, and QA); participating in standups and ceremonies as part of Agile methodology, using Agile board to collaborate on daily basis with stakeholders; and working with business users and development teams to advise on solutions and roll out fixes for seamless integration of application components (using Java, C++, and Jenkins for QA and UAT environment) and UNIX shell scripts (in Development, Development Integration, and QA environments).

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on juju.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

1:02 min

Scheduling recurring automated operations through standard periodic cron jobs

Aurélie Vache Aurélie Vache · WWC Europe 2026

3:47 min

Exploring JSON, CBOR, and JOSE for data serialization

Aaron Russell · LIVE

2:03 min

Microsoft integrating native Unix coreutils into Windows environments

Chris Heilmann +2 · LIVE

1:06 min

Developer experience and project variety at scale

Alexandra Petri · WWC 2023

2:07 min

Designing for sustainable scheduling and utilization

Ricardo Sueiras Sueiras · LIVE

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

Videos

See all

Related articles

See all