Job Description :
This Client is a world leader in cloud-based software solutions for the financial industry.
They are a fun company to work for and are consistently rated as one of the best companies in BC.
This is also one of the largest Java shops in western Canada.
To succeed in this role, you will have strong Agile and SOA experience, have worked with design patterns and multi-threaded programming, have experience with test driven development, continuous integration systems, and dependency injection containers, and have experience with network protocols such as HTTP, TLS, and TCP and with web services technology such as REST, JSON, or Thrift.
The Client is a provider of sophisticated cloud-based software services for financial institutions around the world.
As a Senior Java Developer, 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.
You will be continuously pushing the boundaries of Java technology.
This is an opportunity to work alongside some of the best Java developers in Vancouver and to apply your craft in an environment that encourages creative thinking and autonomy.
The software is developed by small, focused agile teams of developers and QA.
Developers think beyond a single component to build complete system solutions.
Challenge yourself by learning new technologies, and apply your skills across 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 well.
Technologies worked with on a daily basis include :
NoSQL DBs (Cassandra, MongoDB, HBase, Zookeeper)
In Memory Data Grids (Terracotta)
Serialization libraries (Thrift, Protocol Buffers)
Large scale data processing (Hadoop)
Dependency injection frameworks (Guice, Spring)
CQRS frameworks (Axon)
Text search engines (Lucene, ElasticSearch)
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.
8+ years of Java developer experience.
Experience with agile development methodologies.
Experience with test driven development.
Experience with continuous integration systems.
Experience with dependency injection containers.
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.