Intermediate Developer

Role Purpose

 

The company is looking for a back-end programmer who is borderline fanatic about engineering world-class software systems. You’ll join one of five scrum teams, and help fast-track the building of scalable and secure distributed Java-on-Linux systems.

 

As a member of the back-end team, you’ll work closely with developers and QA automation engineers within an agile environment. The technical lead in your team will expect your input on design and technical delivery.

 

Responsibilities

 

You’ll help deliver features for a new product, which involves creating a lightweight, strong security Linux distro aimed at running containerized reactive micro services on bare metal appliances.

The features form a container cluster using technologies such as Docker Swarm or Google Kubernetes.

A key requirement will be secure atomic updates from our cloud environment.

A strong background in *nix operating systems is essential.

 

Skills and experience

 

The more of the following you can offer, the better suited you will be for the position.

Three+ years’ experience with object-oriented development (For example, C++ and Java)

Linux experience: RPM based distros, iptables and networking tools

Experience creating custom Linux distributions

Network protocol knowledge (For example, TCP, UDP, DHCP and HTTP)

Protocol troubleshooting skills (For example, Maestro with Wireshark)

Software load balancers and reverse proxies such as HAProxy, nginx and Traefik

NoSql experience (For example, Cassandra and Redis)

Reactive programming experience, for example, RxJava

Container technologies such as Docker

Understanding of, and experience in, OO design patterns

Java development experience

Experience with agile development frameworks such as Scrum

Dev-ops experience

Knowledge of Java cryptography and PKI is an added plus

Knowledge of computer science algorithms and complexity theory

Software/engineering qualification (For example, a Computer Science degree) preferred

 

Personality Attributes

 

A healthy self-esteem: You’ll be challenged by some bright minds on a regular basis.

Good communication skills: You’ll need to explain your ideas to your team.

An ability to get things done: We don’t like to micromanage, but we do expect you to do the right thing.

A tendency to think outside the box: Innovation is highly valued at the Company.

A preference to work in a team rather than by yourself

An attitude of being proud of your code and taking ownership

 

Upload your CV/resume or any other relevant file. Max. file size: 20 MB.