
Java Developer
- Singapore
- Permanent
- Full-time
- CCC currently runs on an on-premises cluster, but various constraints (flexibility, infrastructure costs, etc.) are pushing the move to a cloud-native implementation, referred to as CARMA internally. You are an ambitious and motivated intermediate Java developer with some experience with Docker/Kubernetes, who is interested in building large distributed cloud-native applications. Your core Java knowledge should be strong. Experience with modern cross-platform .NET (because ArmoniK is written in C#) would be useful, especially for deployment. Experience with Go (because Docker/Kubernetes are written in Go) would also be useful. Experience with C++ (because the quant library is written in C++) would be helpful. Experience with ArgoCD, cloud ops (especially on AWS but any relevant experience on competing platforms would be helpful), Terraform, and other cloud-focused DevOps skills would be useful, although this is not a DevOps role.
- 4+ years of software development experience
- 3+ years experience working with Java
- An understanding of recent Java language features, such as lambdas, streams, and futures
- Knowledge of algorithms and data structures, with fundamentals in complexity analysis
- Good ability to analyze code - understand execution flow & debug even without access to a debugger
- Experience with Maven, Git, writing and maintaining integration tests
- Familiarity with Linux and bash
- Good knowledge of SQL An ideal candidate will also have some or all of the following:
- Experience with Docker/Kubernetes
- Experience working with cloud providers, especially AWS
- Git and a Git-portal like Gitlab or GitHub
- Jira or a similar issue-tracking system
- The Spring framework and IoC, and particularly Spring Boot and Swagger for restful web services
- Experience with Spark