Home  |  Company  |  Career Opportunities  |  Senior Software Engineer – DMS

Career Opportunities

Senior Software Engineer – DMS

The Data Management Services (DMS) Team is responsible for the development of storage virtualization technologies, including snapshot and replication services.    The qualified candidate will have storage and storage virtualization experience, be self-motivating and work with a minimum of supervision.  The candidate must also be a team player, with good verbal and written communications skills.

Key Job Responsibilities

The qualified candidate will be assigned responsibilities in the following areas:

  • Design and development of new storage virtualization types of functionality and/or user interfaces to these technologies
  • Support of existing code base
  • Debug and test.  This includes support of existing code base as well as new code (unit test of own code, engineering verification testing of new code, automated test development to test new functionality)
  • Duties that the new Dot Hill Employee may need to perform:
  • Design and produce quality software products that meet or exceed Dot Hill Systems standards.
  • Produce detailed design documentation
  • Code and unit test all code
  • Follow established corporate processes and procedures, including using a source control system for all code
  • Ensure new functionality is compatible with existing code
  • Interpret marketing requirements and produce a detailed engineering design which meets those requirements
  • Meet and work with members of other organizations as well as customers
  • Provide engineering expertise to resolve internal and external issues
  • Remain current on scientific and product developments
  • Identify and file patents, as applicable
  • Other duties as assigned

The candidate must be a team player, with the ability to work with both co-located and remote personnel, and must contribute to a positive work environment.

Qualifications

To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

  • Storage Virtualization experience (snapshot, split mirror, replication)
  • Storage protocol experience (FC, iSCSI.  SAS a plus)
  • User interface design and development experience
  • C and C++ development experience
  • Firmware development and debug skills
  • Good communication skills
  • Good teamwork experience

In addition, experience in the following areas is highly desirable

  • Familiarity with SMI-S
  • Experience with one or more of the following: AJAX, Javascript, XML, and VxWorks.
  • Remote teamwork experience
  • Script experience
  • Network protocol experience (TCP/IP, IPSec)
  • Human Factors Engineering experience

Competency:

A qualified individual will have a storage background (SCSI, Fibre Channel, iSCSI, SAS) and experience in development of snapshot, split mirror and replication products.  The candidate will also have experience in developing user interfaces for these products. Embedded experience preferred.

Language Skills:

The qualified candidate must have good verbal and written communication skills, including ability to communicate both technically and non-technically.  The candidate must have good email and phone etiquette.  The candidate must have the ability to effectively present information, participate in design discussions, and respond to questions.  The candidate must be able to communicate effectively with various people with varied backgrounds, including peers and subordinates, management, sales, marketing, support, partners, customers, and the general public.  The candidate should have the ability to tailor the presentation/information to the audience.

Mathematical Skills:

The candidate must be able to apply appropriate mathematical, engineering and scientific skills as appropriate to the design/position.  This includes probabilities, percentages, schedule analysis, performance analysis, etc.

Reasoning Ability:

  • Ability to design new functionality to integrate with existing code.
  • Ability to balance design extensibility with manageable, bounded deliverables.
  • Ability to accurately gauge design complexity, completeness and time required to deliver product/feature.
  • Ability to develop schedules and keep to schedules.

Computer Skills:

  • C/C++ development skills (required)
  • RTOS/Embedded/Firmware development skills (required)
  • Embedded Linux development skills (desired)
  • Familiar with Windows operating systems (desired)
  • Familiarity with Solaris Operating Systems (desired)
  • Familiarity with Microsoft Office products (desired)
  • AJAX, JavaScript, XML, VxWorks (desired)
  • Scripting capabilities (Shell, Perl) (desired)

Other Skills and Abilities:

  • Self motivating
  • Ability to work with remote team members
  • Able to own a task and deliver on the task with minimal supervision
  • Ability to help and/or mentor others

Education

  • BS or MS in Computer Engineering, Computer Science or Electrical Engineering (or equivalent experience)
  • Minimum seven years experience in storage development.  Embedded experience preferable.

Physical Requirements


We offer a comprehensive compensation package and a great team-oriented work environment. If you are looking for a challenging career opportunity, please send your resume with salary requirements to:

Apply Now

Dot Hill is an equal opportunity employer and requires a pre-employment drug screen. EOE M/F/D/V