The point where experts and best companies meet
Share
Job description:
is building a next-generation cross-asset calculation system for Citi trading desks and enterprise users in the largest global financial markets and exchanges in New York, London, and other major financial hubs.
execute, partition, and track quantitative risk graphs/trades in a distributedThese graphs can fail due to their complexity and our system must adapt quickly to these failures to provide aseamless experience
Compute Services are deployed onto OpenShift and Amazon’s Elastic Kubernetes Service (EKS). An important initiative in 2025 will be onboarding Google’s Kubernetes Engine toexpand our coverage. Our system scaleas of our services across all asset classes.
The role of the Senior Technical Lead is to lead a variety of engineering activities including design decisions regarding technical direction of the platform with short, medium, and long-term changes, with a key focus on public cloud onboarding.
The project requires constant review of the technologies, patterns and paradigms used to ensure the system is easy to understand, performant, scalable, testable, robust, and observable. The role is a conjunction of technical and managerial roles, with line-management duties, while giving technical direction to a growing team of developers globally.
The platform is a Greenfield build using standard modern technologies such as Java, Spring Boot, Kubernetes, Kafka, MongoDB, RabbitMQ, Solace, Apache Ignite. The platform runs in a hybrid mode both on-premise and in AWS utilising technologies such as EKS, S3, FSX.
Challenging proposed and provided solutions in terms of performance, robustness and cost effectiveness
Making decisions regarding technical direction of platform, including evaluating new technologies and executing proof-of-concept implementations, with good understanding of various limitations
Identifying and defining necessary system enhancements to improve current processes and architecture
Hands-on coding of fixes, features, and improvements
Investigating reported or observed platform issues
Reviewing requests for new features, balancing user requirements with defending the platform from complexity and low-value features
Mentoring/coaching junior developers on coding/architecture approaches and best practices
Skills and Experience:
Expert knowledge of distributed systems including event-driven architecture; at-least-once messaging; CAP Theorem; horizontal and vertical scaling strategies; massively distributed architectures
Expert knowledge of Java, JVM, memory management, garbage collection
Thorough understanding of multithreaded environment challenges
Expert knowledge of Spring, SpringBoot framework and associated technologies
Expert knowledge of test frameworks, such as Junit, Mockito, writing easily-testable code
Expertise in Java debugging, including remote debugging of services deployed to K8s
Expert knowledge of Kubernetes and associated technologies such as KEDA, Karpenter, ClusterAutoscaler, CoreDNS,
Expert knowledge of SQL and/or NoSQL database technologies
Expert knowledge of various messaging protocols and technologies such as REST, HTTP/S, AMQP, WebSocket
Expert knowledge of Confluent Kafka
Experience and good understanding of core technologies provided by GCP/AWS, such as S3, FSX, EKS, SQS, SNS, Kinesis, AmazonMQ, DynamoDB, GKE, CloudStorage, PubSub, Filestore,
Knowledge of modern observability technologies such as ELK, Splunk, Prometheus, Grafana, Micrometer
“What-if” thinking, while designing or reviewing solutions, to foresee or catch potential problems as early in the development process, as only possible
Nice to have:
Good knowledge of Python, Groovy, Bash
C++ basic knowledge/experience
Good knowledge of PubSub model
Good knowledge of Finance, especially large-scale risk calculation
Good knowledge of representing complex calculations as graphs of instructions which can be horizontally distributed
Applications Development
Time Type:
View the " " poster. View the .
View the .
View the
These jobs might be a good fit