JAVA DEVELOPER – ALGORITHMIC TRADING SYSTEMS
Job Description:
A major financial institution with a significant presence in global markets. We operate sophisticated in-house trading systems across equities and derivatives, leveraging cutting-edge technology to maintain our competitive edge.
We are currently expanding our Delta 1 Algorithmic Trading technology team and looking for a Java Developer to design, build, and enhance our execution platform.
The Role:
This is a hands-on development role focused on the design and implementation of industry-leading algorithmic trading systems. You will work on the core platform that executes our proprietary trading algorithms across multiple asset classes, ensuring low-latency, high-reliability performance in a fast-paced environment.
What You'll Actually Do:
Core Development:
- Design & Build: Architect and develop high-performance trading systems that power our in-house algorithmic execution strategies.
- Back-Test & Validate: Build and maintain back-testing frameworks to evaluate algorithm reliability, performance, and risk-adjusted returns.
- Enhance & Optimize: Continuously improve existing algorithms and implement new strategies based on evolving business requirements.
- Own the Code: Write clean, maintainable, production-grade Java code that meets rigorous performance and reliability standards.
Collaboration & Quality:
- Architectural Input: Participate in technical design discussions and contribute to architectural decisions that shape the future of the platform.
- Code Reviews: Review peer code to ensure quality, consistency, and adherence to best practices.
- Requirements Analysis: Translate complex business requirements into pragmatic technical solutions, creating specifications where needed.
- Support & Maintenance: Support the implementation lifecycle and troubleshoot production issues to ensure system stability.
Who You Are (The Must-Haves):
Core Technical Skills:
- Java Mastery: Deep, expert-level knowledge of Java with proven experience building production systems.
- Concurrency Expert: Excellent understanding of threading, synchronization, and concurrent programming in Java.
- Computer Science Fundamentals: Strong grasp of data structures, algorithms, and software design patterns.
- Linux Proficiency: Comfortable working in a Linux development environment.
- Scripting Ability: Good scripting skills using Python, Bash, or similar languages.
Academic Background:
- A degree in Computer Engineering, Computer Science, or an equivalent technical discipline.
Soft Skills:
- Thrives Under Pressure: Comfortable working in a fast-paced, dynamic environment with tight deadlines.
- Problem-Solver: Analytical mindset with the ability to decompose complex problems into practical solutions.
- Team Player: Collaborative and open to feedback through code reviews and technical discussions.
What Sets You Apart (Nice-to-Haves):
- Investment Banking Experience: Prior experience working in an investment bank or similar financial institution.
- Algo Development: Exposure to algorithm development, trading strategies, or quantitative systems.
- C++ Knowledge: Experience with C++ development is a strong plus.
- Advanced Linux: Deep understanding of Linux system internals, performance tuning, and low-level optimization.
- Networking & Architecture: Knowledge of computer networks, computer architecture, and operating systems.
- Agile Methodologies: Familiarity with Agile software development practices (Scrum, Kanban, etc.).
Why You Should Consider This:
- High-Impact Work: Your code directly drives trading decisions and execution in real-time markets.
- Complex Challenges: Work on distributed, low-latency systems that push the boundaries of performance engineering.
- Collaborative Environment: Join a team of talented engineers who value code quality, innovation, and continuous improvement.
- Career Growth: Build expertise at the intersection of finance and cutting-edge technology.
- Competitive Compensation: Attractive package commensurate with experience and impact.
Required Skills:
Environment Performance Tuning Performance Data Requirements Analysis Support Development Design Patterns Structures Data Structures Collaboration Trading Analysis Kanban Team Player Returns Soft Skills Algorithms Bash Compensation Reviews Business Requirements Operating Systems Agile Methodologies Reliability Architecture Software Development Continuous Improvement Agile Optimization Banking Specifications Networking Programming Scrum Computer Science Pressure C++ Linux Software Finance Maintenance Design Engineering Java Business Science Python