StepStone, one of Europe's leading providers of total talent management software addresses the challenges of multiple developer sites using Perforce SCM.
Nigel Reed is the Head of Software Engineering at StepStone, Herts, UK.
StepStone is a leading international provider of human capital management ("HCM") software and services. Its technology and services helps organisations attract, retain and develop their talent. StepStone was founded in Norway in 1996 and listed on the Oslo Børs (Ticker@ STP.NO) in 2000 and the London Stock Exchange (LSE: STPS) in 2008.
StepStone operates some of Europe's largest talent networks which match employers with potential employees and provides a complete suite of HCM software solutions. Through its extensive talent network in Europe, StepStone has privileged insight into the needs and demands of today's workforce, allowing the company to develop highly innovative HCM solutions.
StepStone's comprehensive portfolio of software and services enable organisations to implement efficient HCM processes. These services include; attraction and hiring, post-hire talent management, performance management, compensation management, skills and competency management, career and succession planning, training and development management.
In today's economic environment, IT Directors and CXOs are demanding IT affordability, shorter implementation cycles and scalability more than ever. Fortunately, all of this can be delivered by the Software-as-a-Service (SaaS) model, the benefits of which include rapid access to new technology and the ability to roll out IT services to extra users easily.
StepStone—one of Europe's leading providers of total talent management—is an example of a company that has the flexibility to react quickly to user and market demand using SaaS. Although the company is best-known for its online recruitment services, or 'job boards', the other side of StepStone's business is concerned with delivering talent management software solutions via SaaS, ranging from candidate screening and performance management, through to career and succession planning and even retirement.
However, while the SaaS business model provides some very clear benefits, customers are more technology savvy these days with the prevalence of Web 2.0; they are very aware of new technology developments and, not surprisingly, expect these to be reflected in StepStone's products.
In keeping up with market demands, StepStone is both helped and hindered by the fact that its developers are based in multiple locations around the world. On the one hand, having teams in Germany, Norway, Poland, UK and Vietnam gives the company access to considerable, flexible developer resources on an around-the-clock basis. On the other hand, this approach could make it difficult to ensure cohesive working across all teams, if not managed correctly.
Fortunately, StepStone's software developers have addressed these challenges by using software configuration management (SCM). By providing efficient tracking of a project's progression, regardless of how dispersed the developer teams may be, Perforce SCM enables Stepstone to dramatically speed up release cycles and keep up with customer expectations.
Nigel Reed, Head of Software Engineering, explains: "Perforce SCM enables us to connect everyone to a central repository to track and manage code, wherever our developer teams are based. In turn, this supports faster release cycles."
Prior to the implementation of Perforce, the company had been using SCM to manage code for several years, although different SCM systems were used in various teams. When Reed took on the role of Director of Software Engineering, he saw the benefits of connecting everyone to one central SCM repository and initiated the migration process.
StepStone researched the market thoroughly before making a decision. "We looked at what SCM systems were available, including open source options, taking into account the availability or lack of technical support, and how well they integrated with third-party vendors. A lot of our developers are working in a Microsoft environment and open source SCM doesn't lend itself well to that. Perforce has considerable third-party vendor support and as there's such a wide range of plug-ins available, we've been able to use Perforce off-the-shelf. Perforce's support for developers' desktop tools—Visual Studio, Java, Perl and Eclipse—has been particularly important to us."
Nigel Reed also cites Perforce's performance as a key factor. "Compared to some SCM packages, Perforce is a hundred times faster. Other products performed acceptably over remote links, but Perforce was still two or three times faster than the nearest competitor. This is a big advantage for us: it would have been impossible to have got everyone on a central repository and efficiently linked remotely without Perforce."
Migrating to Perforce
The process of bringing Perforce on-board took place in the first few months of 2008 with a single pilot group, to test how well developers would handle the switch. Administrators were trained on Perforce and in turn trained other developers within StepStone. At the beginning of 2009, around 75 employees were using Perforce, including approximately 50 developers, business analysts, and QA and release teams, all of who needed access and visibility to current projects. Although Perforce is primarily used for managing code, it is also being used to publish and share some of their documentation. The online job board side of Stepstone will also make the transition to Perforce upon completion of its own pilot.
Now that Perforce is well-established within StepStone, what is Nigel Reed's verdict? "Perforce is known for its performance and has lived up to its reputation. Standardising on Perforce has represented a real change in terms of the functionality available to us, particularly for branching and proxy support."
The Perforce Proxy is a self-maintaining proxy server that caches versioned files for re-use on any local network with remote access to the Perforce server. Any number of proxies can be quickly deployed without requiring additional hardware or software. Says Nigel Reed, "The support for proxies has been fantastic. It is very easy to set up a local proxy and it doesn't take hours: you just install it and it works."
The branching feature—which includes a Revision Graph tool that visualises who has changed what and where—has also proved its value to Stepstone. "The branching function is so well-handled within Perforce that we can have a more robust strategy for managing code lines. For instance, we will have code lines open for the various releases. When the release goes out, we can still carry out maintenance, with separate code lines for patches."
Although switching to Perforce has inevitably presented a learning curve for developers, Nigel Reed believes it has been worthwhile. "Perforce is the 'Rolls Royce' of SCM and its functionality has enabled our developers to perform actions that were not possible before. For instance, they can now execute a three-way merge, so Perforce has added to their skills and experience."
"We've now got a solid, central repository that links all our developer teams, regardless of location and enables us to meet rapid release timescales efficiently and quickly. However fast technology changes, with Perforce, we can keep up with market demands."