Job Title: Senior Software Engineer – Java Development (Global Markets Technology)

Introduction:

Join a dynamic and high-performing software engineering team within our client’s Global Markets Technology division, specializing in Pricing and Post Trade Services. We are seeking a passionate and experienced Senior Software Engineer with a strong focus on Java development to contribute to the design, development, and maintenance of critical financial systems. In this role, you will play a key part in building quality software, leveraging modern software engineering practices and technologies. This is a hybrid role, offering the flexibility of online work with occasional office attendance as required.

Duties and Responsibilities:

  • Design, develop, implement, integrate, and maintain digital Forex pricing making, price distribution, and post-trade management systems.
  • Ensure continuous incremental delivery of working software, adhering to agile methodologies.
  • Maintain and promote excellence in software engineering practices.
  • Foster close collaboration and cooperative relationships with business stakeholders, colleagues, and other teams.
  • Contribute to the continuous improvement of technology and team capabilities.
  • Analyze and resolve complex errors in development and production environments.
  • Compile clear and concise design documentation.
  • Mentor team members in technical skills and agile approaches.

Qualifications:

  • Bachelor’s degree (or higher) with significant computing and mathematical content. Examples include:
  • BEng. or BSc Computer Science (or similar)
  • BCom Informatics with notable software engineering content
  • Additional relevant IT Development certifications are advantageous.

Experience:

  • Required: At least 10 years of relevant experience in key result areas, demonstrating a strong track record of software development.
  • Advantageous:
  • Real-time systems knowledge.
  • Real-time trading system knowledge.
  • Banking, capital markets (foreign exchange, money markets, fixed income, derivative products) business knowledge.

Primary Technology Knowledge:

  • REQUIRED:

  • Java SE.

  • Design Patterns, Architectural Patterns.
  • Designing for latency-sensitive systems.
  • TDD/BDD principles.
  • JUnit and mocking frameworks.
  • Database design.
  • UNIX/Linux, BASH shell scripting.
  • Version control systems (Git and others).
  • Build automation (Maven and Gradle).
  • Continuous Integration.
  • Integration skills: Messaging, queuing.
  • Internet protocols, IP networking, firewalls, proxy servers, the Web.
  • Clean code and code quality tools such as SonarQube.

  • ADVANTAGEOUS:

  • FIX protocol experience.

  • Web services.
  • Unix operating systems.
  • Microservices.
  • Cloud (AWS) expertise.
  • Containerization – OpenShift, OpenStack, Kubernetes, Docker.

Competencies and Behaviours:

  • Proficient in agile software development methodologies.
  • Skilled in defining, estimating, and prioritizing tasks and stories.
  • Committed to continuous, incremental delivery of working software.
  • Proactive and able to take ownership of tasks and problems.
  • Capable of producing results with minimal supervision.
  • Excellent communication skills, both written and verbal.
  • Strong analytical and problem-solving abilities.
  • Ability to understand and balance technical aspects and business drivers.
  • Self-motivated and committed to continuous improvement.
  • Ability to multitask, and be responsive and flexible.
  • Ability to work well with third party vendors.
  • Ability to fit into a culture of sharing information, networking and participation in group activities.

Desired Skills:

  • Programming

Desired Work Experience:

  • 5 to 10 years Software Development

Desired Qualification Level:

  • Degree

About The Employer:

Global Markets Technology

Learn more/Apply for this position