At StorMagic we are working on our next generation storage solutions for the edge – going beyond storage as we know today. We are looking for a motivated self-starter to assist our product team in driving ahead with a cutting-edge data-centric architectural approach to how data, storage, and networks will be perceived and utilized to store, protect, and use the most important commodity we are faced with; that being data. In this role, you will get the opportunity to not only be creative and innovate but most importantly develop cutting-edge solutions for the edge, cloud, and enterprise spaces, utilizing the best-in-class technologies, tools, methodologies, and processes.
This role will be based remotely in the United States or United Kingdom.
Who we are
StorMagic is an international software company, founded in 2006 with ambitious plans for growth. We started as a software-defined storage company but through recent acquisitions in enterprise key management and digital asset management software, we are now focussed on delivering software solutions that meet the growing needs of customers at the edge.
Data generated at the edge is growing exponentially and customers are having issues storing, protecting and using all of this data to help them analyze and grow their business. Industry analysts projected that the amount of data created globally outside the datacenter and cloud to be 10% just 2 years ago and project that it will be 75% by 2025.
Our existing products, SvSAN, SvKMS and ARQvault, simplify storage, security and digital asset management at the edge by enabling simple, robust and flexible solutions for large and small enterprises. We have over 1,600 customers around the world that trust us to deliver.
At StorMagic, we view collaboration as one of our main drivers for success and we are open to all our employees to share their thoughts and ideas to help both to turn our bold vision into a reality and to make StorMagic a great place to work.
About This Role
This role involves architecture, design, development, and integration of open source as well as organically developed components. You will touch every aspect of the software stack from the bottom to the top – as well as opportunities to work in cutting edge areas around security, new ways for the separation of control and data plane, high-performance solutions, storage, cloud, data sciences, ML, and AI.
Strong candidates will also have demonstrated the ability to architect software solutions that are highly distributive and scale massively. But more importantly have the means to build, promote, and evangelize vertically as well as horizontally within the organization as well as being able to express ideas that lead to your design concepts influencing the direction of the team and capable of developing and testing applications using existing and emerging technology platforms and paradigms.
What you’ll do:
- Work on products that bring our new visions to fruition,
- Create the vision and concepts to allow you to develop the architectural models that lead to the design and development of the next generation products within the Technology Office and collaborate with the Engineering team,
- Collaborate with team members to promote and gain buy-in of your architecture, design, and development,
- Work with and define/promote different technologies, development process’, methodologies, tools, and open source,
- Demonstrated ability to understand, evaluate and implement new technologies,
- Ability to effectively articulate technology to less technical audiences,
- High desire to want to learn new things, be challenged and challenge those around you; not interested in being the smartest person in the room,
- An immaculate communicator, and
- Stay’s ahead of the current technology trends while taking a practical approach to technology introduction
Requirements of the Candidate
Qualified candidates will have demonstrated performing business requirements analysis to successfully architect, design, develop, and deliver complex, and platform agnostic solutions – around scalable hardware platforms. In addition, they must have the following:
- Bachelor’s degree (a master’s degree is preferred) in Computer Science
- 10 or more years of product development experience
- Storage experience of one or more of these types: SAN, NAS, and Object – file systems understanding is nice to have
- Edge based development experience – especially around being able to efficiently move data from edge to services, storage, or even the cloud
- Understands cloud-based development / understanding (e.g., Azure, AWS, vCloud)
- Solid understanding of networking with high-performance requirements
- System programming experience – especially around high-performance designs
- Experience with development using a micro-service architecture approach using Docker containers
- Experience developing for multi-cores, deeply knowledgeable of thread-based design, development, and debug
- Experience with many open-source packages, integration, and life-cycle approaches
- Solid object-oriented programming and design skills
- Familiar with agile software development methodologies, including continuous integration
- Experience in development tools such as git, JIRA, and Coverity
- Strong experience with at least one of these: Linux and Windows — as a development platform and end target
- Experience in several of these languages: C/C++, Go, Python, Lua, and shell
In addition to the above, it would be desirable for the ideal candidate to have some of the following skills:
- Master’s degree in Computer Science
- Experience with highly available systems – how to architect, design, and develop
- Experience in DB technologies – as it relates to HA and distributive designs
- Familiar with many common open sources such as: Kafka, Redis, Prometheus, Jaeger, Vault, gRPC, etc.
- Experience with DPDK and SPDK bypass technologies
- Experience with a massively scaled design that requires a highly robust RPC mechanisms and highly available micro-service solution
- Data science, ML, and AI experience a huge plus and differentiator
Salary and benefits
We believe that our people’s wellbeing and development are key to our success and we offer benefits to our employees with this in mind including:
- Competitive Salary
- Ample Vacation Days
- Structured Development and access to a range of Training Materials
- Flexible Working Arrangements
- Fantastic Life and Medical Benefits
- Good retirement contributions dependent on location