ThinkMarkets is a global financial technology company, specializing in providing multi-asset trading solutions to thousands of clients around the world. With our flagship ThinkTrader platform, we make it available for our clients to trade the world 24-hours a day. Our mission is to bridge the gap between traders, investors, and platforms by allowing access to global markets and thousands of products thus providing our clients the ability to trade the world in the palm of their hand. We use the latest technologies to give traders seamless access to our proprietary trading platforms.
We are seeking a high caliber individual for the Principal Java Engineer - Trading Platforms role to join our rapidly growing global workforce in Sofia, Bulgaria. The Principal Java Engineer - Trading Platforms will be responsible for overseeing and leading a team of back-end software engineers as well as working together with program managers, software developers, quality assurance and user experience experts on the different aspects of the software development cycle. In addition to implementing efficient, reliable, low-latency, high-throughput, and multithreaded code, you will be responsible for integrating with trading venues, market data sources, and other APIs provided by various vendors around the globe. A successful candidate should demonstrate excellent software development knowledge, algorithmic thinking, and deep analytical skills.
Responsibilities:
- Oversee and guide a team of software engineers, while keeping a constant pulse across departments to ensure the success of the team projects and goals
- Define the architecture and technical design of trading system modules and services
- Hands-on participation in the implementation of new modules and features
- Analyze functional and non-functional requirements, design technical solutions and research third-party API specifications
- Estimate work and time efforts, and plan the project execution accordingly
- Actively troubleshoot reported issues
- Build and utilize metrics to analyze features as they are deployed to Production to ensure they are functioning as expected
- Work closely with product and business leaders to determine organization roadmap and build deliverables in accordance with timelines
- Iterate with our UX, Product, Infrastructure, and Marketing teams in an agile environment to bring features from conception to launch
- Play a key role in the talent management employee cycle
Requirements:
- 7+ years of experience developing Java-based high-throughput, low-latency solutions
- BSc/MSc degree in Computer Science/Engineering or other IT related field
- Proficiency working with multithreaded systems
- Experience with distributed caching architectures
- Experience working with RDBMS
- Experience with WebSockets, Protocol Buffers and GRPC
- Demonstrable ability to analyze heap dumps, stack traces, and optimize memory utilization
- Experience configuring and tuning JVM-based applications
- Familiarity with modern DevOps best practices
- Experience working with live trading systems in a Financial Service environment strongly preferred
- Proven ability to learn about specific financial product spaces, such as FX, Equities, and Options
- Excellent command of the English language
What we offer:
- Highly competitive remuneration
- 25 days annual paid leave & 1 day Birthday leave
- Health insurance & Dental Care for you, spouse, and kids under 18
- Fully covered Multisport card
- Employee Assistance Program
- Fresh fruits, nuts, healthy snacks, and beverages
- Modern and colorful office in Cargill Tower, close to public transports and commodities