The Origins of eCDM: New Technologies & Methodologies
EMC recently announced Enterprise Copy Data Management (eCDM), a product that enables global management and monitoring of copy data across primary and protection storage. Perhaps just as interesting as the product itself is the way that the product was conceived, designed, developed, and taken to market. Like the trailblazers of the west, the product team behind eCDM was faced with the daunting challenge of exploring uncharted territory. They created a product from scratch using agile methodologies, open source technology, a brand new UI, and an entirely custom go-to-market strategy.
This is the second post in a series that details the challenges and successes of the product team from conception to release. The first post can be found here.
Agile methodologies, open source software, and an intuitive user interface are expected of modern software today. However, there is no simple, well-worn path from long-standing traditional development processes to these signature software traits. Each deviation from an existing methodology requires a clear business justification, and in turn, a clear benefit for customers. The eCDM team embraced these concepts and worked diligently to excel at agile, test and utilize open source components, and build an attractive, effective user interface – all while emphasizing the customer experience.
When people think of agile today, it’s so easy to accept it as a foundational piece of modern software development. Marina Kazatcker, the lead engineering program manager for eCDM, explained to me that the eCDM team had planned to use agile since the conception of the product. However, it’s important to note why the decision was so clear; other teams within EMC were already using agile methodologies and they were seeing great results from the process. Teams were able to effectively measure their progress and keep track of their assigned stories. Most importantly, as Marina and the team noted, was that agile would allow eCDM to iterate quickly with higher quality, to the benefit of end users. Agile development processes means quicker bug fixes, more releases, and more robust code. With these benefits in mind, Marina and the team welcomed agile and began the journey with 15 scrum teams (editor’s note: With 15 scrum teams, eCDM jumped into the agile deep waters right away!), each addressing a separate feature or component of the product.
Around the same time as those agile conversations, engineering teams were debating the use of various open source tools within the eCDM product. Amrit Jain, a software engineer for eCDM, explained the importance of leveraging open source in modern software products. Before open source was widely adopted by enterprise, engineering teams shared an emphasis on developing everything in-house. However, Amrit highlighted the reason for choosing an open source option over an internal solution: “we’re not in the business of building smaller components; we’re in the business of building our product.” Re-using components that already exist in the open source community allows the team to focus on what really matters: the product. Open source solutions enable products to be built quicker, and with the open source community surrounding these solutions they are robust and battle-tested.
While Amrit was focusing on back-end open source components, the user interface team for eCDM was carefully planning their choice of both technology and design. Skip Hanson, a senior manager responsible for the eCDM user interface, understands the importance of an intuitive user interface to complement underlying technologies in a modern software product. The team focused on ease of use to provide the best possible experience for the end-user. “Enterprise software usability shouldn’t be any different than any other software,” Skip explained to me. It makes sense – the same people that use consumer software will be using enterprise software. Even though enterprise software is more complex by nature, the design shouldn’t reflect that complexity. For that reason, Skip and his team chose modern web tools and design standards to develop the eCDM user interface with a focus on the customer. As our customers have repeatedly cheered on EMC’s new UIs – “No more Java!”
It’s pretty clear to see that each of the technical decisions made by the eCDM team reflect a nearly obsessive focus on the customer’s experience with the product, despite the challenges associated with deviating from existing development processes. Whether it is faster development cycles, more robust product components, or a great user experience, the decisions to use modern methodologies and technologies enable eCDM to more effectively respond to the needs of the customer.
Marina Kazatcker is the lead engineering program manager for eCDM. She began her career as a software engineer developing algorithms for medical devices. For last 15 years, she has worked in various software development and leadership roles inside tech industry. In the last 5 years she has led the Agile transformation in product development in different programs.
Amrit Jain has worked at EMC for 3+ years as a consultant software engineer, with 15+ years of hands-on experience in architecture, technical design, and development of various large-scale cloud and web-based services and applications. Amrit has worked in various software development and leadership roles at Cisco, Oracle, and Ocwen.
Skip Hanson is a 20+ year veteran of EMC and unapologetic UX evangelist. He has spent his whole career in UI/UX design, development and management. He is currently responsible for the UX of eCDM. In past lives he has worked to improve user experience in many projects including: BRM, BRM mobile, NetWorker, Avamar, and Raptor. He is currently Senior Manager for the best group of UX hackers and creatives he’s ever met.
–Tyler Stone @tyler_stone_