Software Development Engineer 1

Product Management - Fort Lauderdale, Florida, United States

As a member of the R&D team, the Software Development Engineer 1 is an entry level software engineer who develops, tests, troubleshoots, maintains, and debugs software components for existing or new products. The role works within a team of software engineers on problems of limited scope and complexity which are structured to develop knowledge and experience; receives general guidance and direction on work that may span multiple disciplines of software engineering; and follows established practices and procedures to achieve overall program performance, schedule and quality standards. 

Duties:

  • Under general guidance, performs technical work requiring application of basic software development methodologies to complete assignments to required standards of quality and timeliness
  • Develop technology components that would integrate with larger SDS (Software Defined Storage) platform and product
  • Performs specific and limited portions of a broader project assigned to a higher-level Software Engineer
  • Solicits input and expertise to carry out assignment correctly
  • Follows the software development process and adheres to standards to produce high quality software 
  • Applies DataCore’s software engineering processes and standards 
  • Communicates technical issues within scope of assignment 
  • Establishes and maintains thorough and accurate documentation of all work; communicates technical issues within scope of assignment; may assist with technical specification documentation and review
  • Implements, unit tests, debugs, and integrates code of assigned projects
  • Performs preliminary tests to verify the functionality, accuracy, and efficiency of developed or enhanced software
  • Performs maintenance functions to correct errors as necessary; documents and reviews all results with higher level engineer 
  • Learns principles of continuous work practice improvement through involvement in post project review
  • Implements and maintains quality improvements to process and products as they are introduced into the development process 
  • Coordinates own development activities on routine work and cooperates with other programmers and scrum team members on technical aspects related to the project 

Knowledge, Skills, Abilities:

  • Kernel development focus:Kernel or device driver experience with an understanding of low-level interactions between hardware and software Experience with Systems Software development over Windows OS. 
  • Windows services & desktop applications focus:knowledge / experience of designing, coding and debugging in Windows C++, C# .Net. Experience with systems software development over Windows OS  
  • Full Stack development focus:Knowledge / experience of tools/technologies including C#, Python, MVC, SPA, Java Script, CSS, HTML5, & Front-end frameworks like JQuery, Angular, TypeScript, etc. Thorough understanding of Object Oriented Programming principles. Knowledge / experience developing and consuming APIs (REST, SOAP)  
  • .Net development focus:Experience of developing and debugging in systems software domain on Windows with C++, C#, .Net programming  
  • UI developer focus:Strong understanding of front-end coding and development technologies. Mastery of C++, Java or other programming language  

Education/Experience:

  • Bachelor’s degree or equivalent in computer science, electrical engineering, or related field
  • 3-5 years software development experience 
  • Demonstrated understanding of Computer Science fundamentals and basic proficiency in a programming language(s) 
  • Understanding of basic software lifecycle process   
  • Knowledge / hands on experience of modern DevOps practices for CI/CD. 
  • Knowledge / experience with multiple development processes like DDD and TDD 
  • Self-starter with extreme comfort in working with geographically dispersed teams 
  • Experience working with products in Storage and related domain will be a strong plus 
  • Knowledge of Storage related concepts (mirroring, encryption, snapshots, replication, etc.) 
  • Good general working knowledge of the SCSI specification and common transports 

Postuler pour ce poste