Java Developer
Job Description
Level 1
Job Description:
Our company is a global financial services firm and a market leader in investment banking, securities, investment management and wealth management services. With offices in more than 43 countries, the people of our company is dedicated to providing our clients the finest thinking, products and services to help them achieve even the most challenging goals. As a market leader, the talent and passion of our people is critical to our success. We embrace integrity, excellence, team work and giving back.
The Technology division partners with our business units and leading technology companies to redefine how we do business in ever more global and dynamic financial markets. Our sizeable investment in technology results in leading-edge tools, software, and systems. Our insights, applications, and infrastructure give a competitive edge to clients’ businesses and to our own.
We develop and oversee the overall technology strategy and bespoke technology solutions to drive and enable the Institutional businesses and functions. Our clients include Fixed Income, Equities, Commodities, Investment Banking, Research and Global Capital Markets as well as Operations, HR and Corporate Services.
We are seeking a software developer to join our company to assist with building solutions and providing services to our Institutional Securities, Fixed Income Automated Trading Technologies team. The ideal candidate has: good Java knowledge, knowledge of data structures and algorithms, problem solving skills, and good communication skills. The candidate will take part in various activities revolving around delivering commercial and strategic technology within our department.
The candidate should demonstrate interest in or working experience in the financial services industry. In addition, the candidate will be expected to take an active role in the design, development, testing and delivery of functional and strategic changes in our e-trading solutions. The role will also involve interaction with key stakeholders from other Application Development teams within our company and/or other partners from our Business, Operations, Production Management and therefore, requires the ability to communicate clearly and concisely. This is a developer position, not a management position; the candidate will be expected to design, develop and deliver code deliver software as their primary responsibility.
Required skills:
– Core Java knowledge.
– Framework, Patterns, Collections, Garbage Collection.
– Excellent written and verbal communication skills.
– Interest in Finance (albeit no prior knowledge is required).
– Proficiency with Unix/Linux.
– Proficiency with database technologies (ex. Sybase, DB2, Oracle, SQL Server) and PL/SQL.
– Knowledge and/or working experience in an Agile environment (Scrum, Kanban).
– Computer Science fundamentals (Client/server, multi-threading, memory management).
– Experience working with an IDE (ex. IntelliJ or Eclipse IDE).
Desired skills:
– Unit testing and unit testing frameworks.
– Experience with Java 10 versions and beyond.
– Experience working with Python.
– Experience developing client-server, distributed, real-time, performance-critical, highly available, or large-scale systems.
– Experience working with Source Code Management solutions (ex. Git, Perforce, CVS).
– Experience working with Continuous Integration environments (ex. Jenkins).
– Knowledge of financial technologies (ex. FIX, FpML, Swift protocol) and business applications.