SOFTWARE ENGINEER 

We seek to recruit an experienced software engineer to lead development of a storage system management server.

This server is written in Python, communicates with clients over TCP sockets using a custom XML protocol and supports a high-availability clustered architecture.

To meet strong client latency requirements, sockets are handled asynchronously; potentially blocking operations are handed out to work-queue type processes.

The multi-user, multi-instance nature of the system is handled via a shared object model, the integrity of which is maintained by a sophisticated locking system.

The successful candidate will work within an established and flexible development framework to extend current functionality and to implement new and exciting features.

- Computer Science degree or related Degree.

- Strongly object oriented mindset

- 2-3 years experience in OO programming. Python is our preferred language plus Java, C++ or other relevant OO experience is acceptable.

- Linux system level experience

Additional desired experience includes:

- Socket programming

- XML

- Embedded systems / high availability programming

- Storage systems