Overview

Your Role:
As a Senior Java Developer at Global Relay, you’ll be using leading edge technologies to build pioneering products that are used by tens of thousands of users globally to solve real world business problems. You also get to tackle interesting and engaging problems to do with scalability and high availability in big data environments. At Global Relay we are continuously pushing the boundaries of Java technology.

This is an opportunity to apply your craft in an environment that encourages creative thinking and autonomy. Our software is developed by small, focused agile teams of developers and QA. 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.

Tech Stack:

  • 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)

Your Job:

  • Work as part of an agile development team to write Java code for enterprise services
  • Write unit and integration tests for your Java code
  • Design, in collaboration with team, the software implementations that satisfy business requirements
  • Design, in collaboration with the architecture team, the system architectures that satisfy business requirements
  • Collaborate with QA in development of test cases for Java code
  • Develop deployment systems for Java based systems
  • Document code and document detail designs
  • Collaborate with product owners on user story generation and refinement
  • Monitor and support operation of production systems
  • Participate in knowledge sharing activities with colleagues

About You:

  • Minimum 8 years of Java developer experience
  • Experience with agile development methodologies
  • Experience with network protocols such as HTTP, TLS, TCP
  • Experience with service oriented architecture
  • Experience with web services technology such as REST, JSON, or Thrift
  • Experience with multi-threaded programming
  • Experience with design patterns
  • Experience with test driven development
  • Experience with continuous integration systems
  • Experience with dependency injection containers