About the role
The Senior Java Developer is a member of a small, highly focused team, responsible for building services for highly scalable and robust messaging, data acquisition and archiving systems, 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.
- Serialization libraries (Thrift, Protocol Buffers)
- Text search engines (Lucene, ElasticSearch)
- Splunk/Elastic
- CI/CD Build tools: Maven, Git, Jenkins
- Real-time communication API’s (WebRTC, SIP, XMPP)
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 functional test cases
- 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
- Pair programming and peer reviews
About You
- Minimum 8 years of Java development 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:
- 3rdgeneration messaging systems
- SIP or XMPP
- Soft real-time systems
- 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
- Deployment technology such as Ansible
- Parsing PDF, Word or other complex document formats
- OCR parsing technology
- Full text searching/indexing and tokenization
#J-18808-Ljbffr