Summary:
The Senior Software
Developer (ClusterStor) works with our expert team of architects to deliver
revolutionary new high-performance storage systems solutions with a focus on
innovating the management application suite. This role will focus on
application development utilizing the existing framework to interface with back-end
hardware. Also, the developer will have the opportunity to be part of
enhancements and development of the solution infrastructure.
Essential Job Functions and Responsibilities:
- Enhance
and develop software framework and components with a cluster management
system in mind. Using requirements defined by architects and senior
engineers, the developer will implement these requirements to expand the
system solution. - Primary
work will be on development and enhancement of advanced high performance
storage management solutions - Contributes
to the Application Framework in collaboration with software architects and
developers - Design
and Develop high quality, well tested production level code - Document
code and maintain coding documents - Work
with test engineering, manufacturing, and high performance computing
customers managing the largest storage clusters in the world to resolve
bugs, performance issues, and gaps in requirement - Collaborate
with other development teams to ensure full integration of all parts of
system-Works with UI designers to ensure a consistent, intuitive user
experience, including a standardized look and feel
Knowledge, Skills and Abilities:
Required:
- Experience
with High Performance Computing Storage Clusters - Extensive
development experience with HPC file systems and/or database storage - Experience
with Dojo, Twisted, Zabbix, and Icinga - Experience
with object oriented concepts and design patterns - Experience
in Linux scripting - Knowledge
of testing methodologies - Experience
with Python and Javascript - Experience
working on an Scrum/Agile team - Experience
unit testing and working with Test Driven Development methodologies - Excellent
verbal and written communication skills - Experience
with data source integration and data retrieval - Experience
with Source Control tools; GIT - Ability
to create and understand UML diagrams
Desirable:
- Experience
of HPC and clustered environments is highly desired (Puppet, SLURM,
pdsh, Red Hat Cluster Suite, Capistrano, Ganglia) - Extensive
knowledge of installation and deployment methods of Lustre Storage
Appliances - Knowledge
of domain driven design - Experience
with C and C++
Education and
Experience:
- Bachelor’s
degree (Software Engineering, Computer Engineering, Computer Science or
Math preferred) or equivalent work experience - 8+
years of system software integration and development experience is
required; with focus on advanced high performance storage management
solutions
Schedule
Requirements:
- Customary
business hours Kitchener, Ontario - Flexibility
to accommodate work in a distributed global team across multiple time
zones
Location:
- Modern
office space in downtown Kitchener
Travel Requirements:
- Occasional
travel to domestic and international locations, at times on short notice - Valid
passport
The salary range for
this role is CAN$90K-$125k.
This is a regular,
full time, permanent role within our company. We are looking for 4 developers.
If you are
interested in this role, please apply here on our website or send you resume
directly to our recruiting department, jobs_can@xyratex.com
We offer a
competitive benefits package. We offer Life Insurance, Accidental Death &
Dismemberment, Short Term & Long Term Disability insurance, an Employee
Assistance Program, Extended Health Care, Dental, and Vision. We also offer an
additional optional life insurance purchase program and retirement.