Senior Java Developer – Multi-threaded Messaging - Kelowna, British Columbia Canada - 22588

This closed position was filled. Check out our Jobs Search Page for our current open positions similar to this one.

JOB DESCRIPTION

Job #: 22588
Title: Senior Java Developer – Multi-threaded Messaging
Job Location: Kelowna, British Columbia - Canada
Employment Type:
Salary: $85,000.00 - $95,000.00 - Canadian Dollars - Yearly
Other Compensation: Full benefits
Employer Will Recruit From: Local
Canada
Relocation Paid?: NO

WHY IS THIS A GREAT OPPORTUNITY?


Senior Core Java Developer – NoSQL, Teracotta, Thrift - 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 a small satellite office working on an integral part of a large system.  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.

JOB DESCRIPTION

The Role:

Our 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 in a tightly-knit group 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)

Role Responsibilities:

  • 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

 

 


 

QUALIFICATIONS

Technical Skills Requirements:

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

Education:
University - Bachelor's Degree/3-4 Year Degree