Where Does Russia Fit Into The Global Software Industry?
Exploring how Russia’s nascent software industry measures up to other countries.
Feb 15, 2006
I've written my last two columns on the Japanese software industry (July 2005) and the Irish software industry (October 2005). This time, it’s Russia’s turn.
In October 2005, I gave a talk on the state of software engineering and the software business as well as a workshop on software entrepreneurship at the first annual Software Engineering Conference-Russia (www.secr.ru).
This conference was held in Moscow, and had more than 500 attendees. Intel, Borland, Microsoft, Telelogic, IBM, and Siemens were conference sponsors. The organizers were RUSSOFT (www.russoft.org), the Russian National Association of Software Development Companies, and RUSSEE (www.russee.com), a 20-person venture based in Moscow that is actively engaged in education and consulting on best practices in software development.
Artem Ikoev of RUSSEE was the conference executive director and worked tirelessly to make this event a success. RUSSEE’s two founders, Ilya Antipov and Dmitry Dakhnovsky, both studied computer science at Carnegie Mellon University, worked in U.S. industry, and have retained close ties to the university and the Software Engineering Institute (SEI). I used this opportunity to learn something about Russia and its software industry, though I want to frame my comments within a broader context.
In The Business of Software,1 I offered some generalizations on how I thought the software business differed in different parts of the world. With regard to Europe, I suggested that too many companies I had worked with tended to treat software as a science. My experience has been with various software groups and telecommunications producers, ranging from startups like Business Objects to Siemens, Alcatel, and Nokia. I also have studied the history of the computer industry, where many inventions (not the least of which is the Web) have come out of excellent European and British universities and research labs. True, there are a few successful global product companies, led by SAP in Germany, and global IT services companies, led by CapGemini in Paris, and several Irish companies that have made a good business of software outsourcing and local customization. But most of the European programmers I worked with seemed mainly concerned with excellence and elegance in program architecture, design, and construction, incorporating the latest technologies, or building custom systems for the various European markets. Often I found myself frustrated at how long they took to ship products and how little money they made from their considerable software skills.
In Japan, where I lived for seven years, it seemed to me that programmers and managers largely treated software as a problem in production. It is not surprising that Hitachi, Fujitsu, NEC, and Toshiba tried to institutionalize the best IBM engineering practices by establishing "software factories" during the 1970s and 1980s.
They successfully built large-scale systems and customized industrial applications relying heavily on standardized development processes, rigorous quality-assurance techniques, extensive tool support, reuse libraries, and low-cost labor, especially at networks of coding subsidiaries and subcontractors. We continue to see programs with remarkably few defects coming from Japan. The great weakness of the Japanese factories, however, was their focus on mainframes and staff largely consisting of employees with little or no background in computer science.
The factories had trouble migrating to the world of client-server, Windows, and the Internet, and became highly priced as Japan became one of the most expensive places in the world. The Japanese are slowly training a new generation of programmers and learning to build more up-to-date computer systems. But they still focus on derivative customized applications for the local market (except for the video-game business and some consumer electronics and embedded software). Overall, Japanese computer science departments remain far behin
In October 2005, I gave a talk on the state of software engineering and the software business as well as a workshop on software entrepreneurship at the first annual Software Engineering Conference-Russia (www.secr.ru).
This conference was held in Moscow, and had more than 500 attendees. Intel, Borland, Microsoft, Telelogic, IBM, and Siemens were conference sponsors. The organizers were RUSSOFT (www.russoft.org), the Russian National Association of Software Development Companies, and RUSSEE (www.russee.com), a 20-person venture based in Moscow that is actively engaged in education and consulting on best practices in software development.
Artem Ikoev of RUSSEE was the conference executive director and worked tirelessly to make this event a success. RUSSEE’s two founders, Ilya Antipov and Dmitry Dakhnovsky, both studied computer science at Carnegie Mellon University, worked in U.S. industry, and have retained close ties to the university and the Software Engineering Institute (SEI). I used this opportunity to learn something about Russia and its software industry, though I want to frame my comments within a broader context.
In The Business of Software,1 I offered some generalizations on how I thought the software business differed in different parts of the world. With regard to Europe, I suggested that too many companies I had worked with tended to treat software as a science. My experience has been with various software groups and telecommunications producers, ranging from startups like Business Objects to Siemens, Alcatel, and Nokia. I also have studied the history of the computer industry, where many inventions (not the least of which is the Web) have come out of excellent European and British universities and research labs. True, there are a few successful global product companies, led by SAP in Germany, and global IT services companies, led by CapGemini in Paris, and several Irish companies that have made a good business of software outsourcing and local customization. But most of the European programmers I worked with seemed mainly concerned with excellence and elegance in program architecture, design, and construction, incorporating the latest technologies, or building custom systems for the various European markets. Often I found myself frustrated at how long they took to ship products and how little money they made from their considerable software skills.
In Japan, where I lived for seven years, it seemed to me that programmers and managers largely treated software as a problem in production. It is not surprising that Hitachi, Fujitsu, NEC, and Toshiba tried to institutionalize the best IBM engineering practices by establishing "software factories" during the 1970s and 1980s.
They successfully built large-scale systems and customized industrial applications relying heavily on standardized development processes, rigorous quality-assurance techniques, extensive tool support, reuse libraries, and low-cost labor, especially at networks of coding subsidiaries and subcontractors. We continue to see programs with remarkably few defects coming from Japan. The great weakness of the Japanese factories, however, was their focus on mainframes and staff largely consisting of employees with little or no background in computer science.
The factories had trouble migrating to the world of client-server, Windows, and the Internet, and became highly priced as Japan became one of the most expensive places in the world. The Japanese are slowly training a new generation of programmers and learning to build more up-to-date computer systems. But they still focus on derivative customized applications for the local market (except for the video-game business and some consumer electronics and embedded software). Overall, Japanese computer science departments remain far behin






