Senior Java Developer - Vancouver
Your Role:
This is an opportunity to work alongside some of the best Java developers in Vancouver and apply your craft in an environment that encourages creative thinking and autonomy.
Tech Stack:
- Micro-services Container Platforms (OpenShift, Kubernetes, CRC, Docker)
- NoSQL DBs (Cassandra, MongoDB, HBase, Zookeeper, ArangoDB)
- Serialization libraries (Thrift, Protocol Buffers)
- Large scale data processing (Hadoop, Kafka)
- Dependency injection frameworks (Guice, Spring)
- Text search engines (Lucene, ElasticSearch)
- Splunk/Elastic
- CI/CD Build tools: Maven, Git, Jenkins
- Frameworks: Vert.x, Spring Boot
Your Job:
- Design, implement and provide architectural guidance in deploying high data volume services as a part of an agile development team
- 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:
- 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:
- High data volume distributed systems
- 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
- Full text searching/indexing and tokenization
- Lucene