Java Developer - FinTech Messaging Platform
The Java Developer, Messaging Platform, is a member of a small, highly focused team, responsible for building services for a highly scalable and robust messaging system, using leading edge technologies. This is an opportunity to work alongside some of the best Java developers in London and apply your craft in an environment that encourages creative thinking and autonomy. We encourage our developers to think beyond a single component to build complete system solutions. Challenge yourself by learning new technologies, and apply your skills across our different projects and application domains. If you are committed to code that is clean, well-tested, well-reviewed, performant and secure then you'll fit in around here.
Technologies in use:
- NoSQL DBs (Cassandra, MongoDB, HBase, Zookeeper)
- Serialization libraries (Thrift, Protocol Buffers)
- Large scale data processing (Hadoop, Kafka)
- Dependency injection frameworks (Guice, Spring)
- CQRS frameworks (Axon)
- Text search engines (Lucene, ElasticSearch)
Role Responsibilities:
- Design, implement and provide architectural guidance in deploying microservices as a part of an agile development team
- Migrate existing services to microservices, with the goal of reducing complexity at the design and architecture level
- Write unit and integration tests for your Java code
- Collaborate with testers in development of test cases for Java code
- Develop deployment systems for Java based systems
- Collaborate with product owners on user story generation and refinement
- Monitor and support the operation of production systems
- Participate in knowledge sharing activities with colleagues
Technical Skills Requirements:
- Minimum 3 years of Java Developer experience in an Agile environment, building scalable, multi-threaded applications and services
- API development experience in service and resource-oriented architectures
- Fluency with Linux
- Passion for Test Driven Development
- Understanding of network protocols such as HTTP, TLS, TCP
- Experience with any of the following is an asset:
- 3rd generation messaging systems
- Backends for mobile messaging systems
- SIP or XMPP
- Soft real-time systems
- Experience doing performance tuning
- Big Data technologies, such as Hadoop, Kafka, and Cassandra, to build applications that contain petabytes of data and process millions of transactions per day
- Cloud computing, virtualization and containerization
- Continuous integration systems
- Deployment technology such as Ansible
Understanding Recruitment is acting as an agency for this Java Developer position
If you are interested in this Java Developer position, please apply.