Putting Experiences in Open Source Software Development on Students’ Resumes: Does it Count? -Insights from the Employers’ Perspective Ju Long julong@txstate.edu Department of CIS&QM, Texas State University-San Marcos San Marcos, Texas 78666, USA Abstract Open Source Software (OSS) is a major force in today's Information Technology (IT) landscape. Companies are increasingly using OSS in mission-critical applications. The transparency of the OSS technology itself with openly available source code make it ideal for IS students to participate in the OSS developments. However, how do the potential employers value the students’ OSS development experiences? What are the factors that the potential employers consider when evaluating the students/developers’ OSS experiences? Our research examined those questions in detail using empirical data gathered from various CIO/CTOs, product managers and developers who have involved in companies’ hiring process and who are familiar with OSS. We found that OSS related experiences can have very positive effect on students’ career development. OSS related experiences are viewed as valid indicators of developers’ capabilities. We also found that how closely OSS projects relate the hiring companies’ projects is crucial when evaluating the OSS experiences. In addition, performances in OS programming and architecting are regarded as more valuable indicator of the developer’s skills. Our research could be of value to IS students when they consider adding OSS experiences to the students’ resume. It could also shed some insights to IS educators when they advise students on their career development. Keywords: Open Source Software, Career Development, Computer Information Systems, Software Development Process, Evaluation and Promotion 1. INTRODUCTION Open Source Software (OSS) is a major force in today's Information Technology (IT) landscape. Rooted in the small ideological Free Software movement from the 1960s, OSS has grown explosively since the late 1990s when icons like Linux, Apache, MySQL and PHP/Perl (LAMP) revolutionized enterprise computing in the Internet age. According to a research report conducted by Forrester Consulting (Forrester Consulting, 2007), a large majority of companies that considered OSS ended up adopting it, and more than half have adopted it for mission-critical applications. For instance, according to an August 2008 survey (NetCraft, 2008) on software used on web servers, Apache, the open source web server program, controls 49.5% market share in all the 176,748,506 sites polled by Netcraft. In one month, Apache has seen a growth of 1.2 million sites (NetCraft, 2008). In addition to existing OSS, there is an abundance of new and innovative products emerging from the OSS community. The zero-cost licensing structure of most open source projects has opened up the acceptance of these products into a number of previously untapped markets. Moreover, the Internet has created an environment in which software distribution costs are approaching zero (Watson et al, 2008). There is no doubt that the zero initial licensing fee of OSS plays an important role in its rapid adoption. But the quality and feature sets of OSS also compare favorably against their closed source counter parts. As the OSS being adopted by more and more enterprises, OSS development and management skills are growing increasingly important in today's IT work places. Given the transparency of the technology itself with openly available source code (Perens, 1999, Feller & Fitzgerald, 2002), OSS development provides IS students a unique opportunity to participate in software development, to interact with software developers and project managers, and to gain valuable experiences in the real world. OSS provides students many advantages. (1) Unlike proprietary software projects, OSS projects do not require contributors to be an employee of the company. All the source code is open and free to access by anyone who is interested in participating in the OSS development; (2) the peer review nature of OSS provides students learning opportunities through critiques from fellow developers; (3) most of the OSS projects allow developers to contribute to every stage of the development. Thus, the students could be able to participate in all the activities during the software development process. This is a good opportunity for students to gain a holistic view on the entire project development process; (4) OSS community has a wide range of projects using different programming languages, various platforms and different IDEs, thus it gives students opportunities to try and learn a variety of knowledge; (5) the students should be able to interact with the OSS developers and improve their team work skills during the process. While OSS is pervasively used in today's businesses, the question remains: Do IT employers actively seek out for OSS related skills and experiences in the hiring process? In another word, if students participate in the OSS projects, does the experience count? How much do the potential employers value the OSS experiences? Do the employers regard the OSS experiences as valuable as the experiences gained in proprietary software projects? How does OSS experience compare to the other skill credentials, such as certificates? What are the factors that the employers look for when evaluating the students’ OSS experiences? Do they value certain contributions to the OSS projects more important than the others? This project is set to address the above questions. 2. RELATED THEORIES 2.1. Career Concern and OSS The success of OSS has spurred a lot of interesting research in this area. A central question to understand is what motivates developers to make unpaid contributions to OSS. The answer to this question has major implications on companies' OSS adoption strategy since OSS is only useful when you can motivate the contributors to work on it on a continuing basis. That is very different from the business relationship with traditional software vendors where monetary profit is the primarily objective. Past research in this area has indicated that one of the most important motivator in OSS is "career concern" (Shah, 2006, Freeman, 2007). Developers build up their resumes by making visible contributions to OSS so that they could get a higher paid employment opportunity in the same field later. Professionals gain a new and valuable way to obtain significant experience in a wide range of areas and to advance professionally (Spinellis, 2006). In this research, we argue that the rise of OSS, and the career concern motivator in particular, has made it paramount for high education institutions to put more emphasize on OSS in IS education curriculum. In order to leverage and manage OSS in the real world, MIS/CIS graduates need to be familiar with OSS technologies, communities, and methodologies. And in turn, graduates with OSS skills will enjoy an added benefit of the career concern factor and get a head-start in the hiring process. 2.2. Unique Skills Required for OSS Knowledge Workers OSS is different from traditional proprietary software in many important aspects. So many skills derived from traditional software development and management courses might not apply well in OSS. In particular, OSS is different in its choices of programming languages, platforms, tools, community dynamics, and development processes. * Programming languages and platforms: OSS developers tend to stay away from proprietary and expensive programming environments such as VB, .Net, Oracle, WebSphere, SAP etc. They would either use common general purpose programming languages such as C/C++, SQL, and Java, or use programming languages and platforms that evolve from the OSS movement. Examples of the latter include Perl, PHP, Python, Ruby, GTK, Linux, Apache, and many open source frameworks in Java. * Tools: OSS developers are less likely to use proprietary IDE tools such as the Microsoft Visual Studio and Adobe Dreamweaver. Instead, they often opt to use OSS IDEs such as Eclipse and NetBeans. For PHP / Perl / Python / Ruby developers, it is common among developers to use just simple text editor to code. OSS developers rely heavily on open and distributed source code version control tools such as CVS and SVN, while proprietary software developers typically use closed commercial solutions for version control inside a company. * Community: The OSS development is all about the online community. The software is developed by the community, promoted and marketed by the community, and used by the community. For companies that use OSS, fostering good community relationship is crucial for getting timely technical support. Managing OSS community relationship requires a good understanding of what motivate OSS developers to contribute, as well as building personal trust with the project's lead developers outside of the company. * Development process: The OSS development process differs significantly from traditional commercial software development process. The requirement of OSS is typically gathered ground up from the community, as opposed to being handed by by product managers. OSS development requires collaboration among un-paid developers from multiple countries / cultures. Compared with traditional software, OSS has a much more frequent release cycle and let the user community do much of the QA work. Because of those differences, a student trained in traditional software development tools and methodologies would have difficulty function well in a work environment that requires OSS expertise. 2.3. Unique experiences gained by participating in OSS development The typical classroom or corporate development setting often focuses on preselected, preinstalled, and preconfigured components. With open source software development, we can get the larger picture (Spinellis, 2006). Students get to participate in all aspects of software development by working as system administrator, database administrator, and other roles. Any of these skills is valuable in today’s marketplace. It is also argued that joining an open source project is an easy way to rub shoulders and interact with highly respected professionals. As the students begin to contribute code to the project, these colleagues could send feedback that will help the students improve. (Spinellis, 2006) Scientists have found over and over again that engaging the students is critical to deep learning (Guzdial and Soloway, 2002). Students who exhibited strong interests tended to be driven by rewards such as developing a sense of pride and personal accomplishment in the OSS experiences. These individuals also pointed out that gaining the admiration of their peers, being recognized as competent, and having potential employers view them as strong job candidates represented salient outcomes that swayed their decision making. OSS provides such opportunities to expose students to intriguing subjects while allowing them to immediately apply concepts to solve today’s problems (Akbulut and Looney, 2007). When participating in the OSS projects, Students could almost immediately recognize that they are learning something new that is cutting edge. Anyone with programming experience, including educators and students, can contribute to the collection of available open source software (Surran, 2003). Unlike proprietary software, OSS allows extensive customization of software to support the needs of users better. This also allows the users to participate more proactively in the development and implementation process (Lin and Zini, 2008). 3. DATA COLLECTION AND ANALYSIS RESULTS To understand how important OSS experience is evaluated in real world, we conducted a survey on a diverse base of software developers, system administrators, and project / product managers in both software firms and the IT department of other firms. It is a representative sample of IT professionals. We have sent out 300 surveys in total and got 100 valid responses in return. Among all the respondents, their Average years of work experience is 15 years, ranging from 35 years to 3 years. About 46% percent of the respondents are developers and another 40% assume the position as CIO and CTO in the company. Another 11% of the respondents are product manager (see figure 1 in the appendix section). 90% of the respondents have participated in the hiring process and 91% of them have particiapted in the evaluation process. The majority of them work for propritary companies (68%) and 20% work for companies use both proprietary and open source softwares. Another 6% work exclusively for open source companies (see figure 2 in the appendix section). Below are the results from our data analyses: 3.1. Familiarity of open source software To ensure the validity of the survey, we first measured participants’ OS familiarity using a 3 point Likert scale: not familiar, somewhat familiar, and very familiar. Among the participants, 89% of them are very familiar with open source software. Another 11% of the participants are somewhat familiar with open source software. We do not have any participant who are not familiar with OSS. We conclude that this sample of participants is familiar with OSS enough and their responses are valid (See Table 1. And Figure 3). We also measured whether the participants have worked with any developer who has worked on an open source software project. 85% of the participants have worked with OSS developers. That further validates the participants as familiar with the OSS development (See Table 2 and Figure 4). We also asked our participants whether they have ever used OSS experience in evaluating developers’ abilities and qualifications. Exactly half of the participants have used Open source software project experiences in evaluating the developer’s abilities and qualifications (See Table 3). This is an encouraging result. It shows that employers are taking the OSS experience into account on a regular basis. 3.2. OSS in hiring and promotion process We found that open source experiences are regarded as very effective evaluation criteria in the hiring process. More than 30% of the respondents strongly agree that the OSS experience could have a positive influence in the hiring decision, and about 37% of the participants agree with that statement. In total, 88% of the participants agree that OSS could have positive influence on the hiring decision (see Table 4). About half of the respondents (56%) agree that OSS experience could have a positive influence in the promotion decision. However, compared with the respondent’s perception on OSS in the hiring process, OSS in promotion is considered with much less importance (See Table 5 and Figure 5). 3.3. OS experiences as indicator of developer’s ability We also ask if OSS experience could serve as a good indicator to measure the developer’s ability. Most of the participants (80%) agree that performance in open source software project is a good indicator of the developer’s ability. With around 60% of them strongly agree or agree (See Table 6 and Figure 6). 3.4. OSS experiences compared to other credentials and experiences We also examined the effectiveness of OSS experience compared with other type of credentials and experiences. We asked the respondents their opinions on the developer’s OSS experience in the hiring and promotion processes and how important it compared with the other methods to evaluate the developer’s ability. First, OSS experience is rated as effective as the experience in proprietary software experience. However, when compared with diploma or a certification, OSS cannot be used to replace a degree diploma since formal education and training is still considered in-replaceable by the OSS experience (Table 7, Figure 7 and Table 8). 3.5. Important factors to consider in the hiring process Our participants also ranked the factors when considering open source experiences in the hiring process. Among all the factors, whether the skills that the developer learned in the OSS expereinces are supported or compatible with the company’s existing or future projects is considered the most imporant factor. Which programming language the developer used in the OSS projects is rated as the second. On the other hand, the number of years or the type of operation systems is not considered as imporant and subsequently ranked lower (Table 9 and Figure 8). 3.6. OSS activities as indicators of the developer’s abilities. We also surveyed developer’s opinions on the usual OSS activities on how important these activities are as indicators of the developer’s ability (Table 10 and Figure 9). Based on the data above, we can see that programming and architectings are still considered the most imporant activities when the companies look for indicators of activities. 3.7. Influences of the OSS project own characteristics As indicated in the table 11 and figure 10, the most important character of OSS projects during the hiring process is whether the OSS project fits the hiring company’s own project. Whether the OSS project is compatible with the company’s customer base is rated as the second important character. However, the project popularity does not rank as high as the previous two factors. It demonstrated that the students do not have to work for the most popular project. Whether the project fits the hiring company’s project is much more important. 4. RESEARCH IMPLICATION AND CONCLUSION Participants in our study are all real world practitioners. They have an average of 15 years of experiences. They are from a variety of companies, including companies that use proprietary software or open source software or both. More than 90% of the respondents have been involved in the hiring process and promotion process. The results based on these participants could shed valid lights on how businesses and organizations evaluate the students OS experiences. Our research is one of the very first studies that examines OS experiences and its potential impact on IS student career development and subsequently on IS education. Our study validated that open source experiences can be used as an effective indicator of the student’s skills. Our respondents strongly agree or agree that OSS development experiences are as valid as any experience gained in proprietary software development. It is also worth noting that although OSS development experiences are considered as very valuable to the students, it cannot replace diploma and formal education. Our study also examined how potential employers evaluate these OS related experiences. We concludes that whether the skills that the developer learned in the OSS expereinces are supported or compatible with the company’s existing or future projects is considered the most imporant factor. Which programming language the developer used in the OSS projects is rated as the second. Those give IS students and educators more clear information when choosing OS projects to participate. We also found that the OS activities that the potential employers value most is still programming and architecting. And whether the OS project fits the hiring company’s own projects is the most important factor that the students should consider when evaluating which projects to join. These above findings show what the employers consider as important when evaluating the OS experiences, which will provide valuable insights to IS students, educators on which OS projects to join. Our study is also valuable to potential employers. They can use it to guide the evaluation process. 5. REFERENCES Akbulut, A.Y. and Looney, C. A.(2007) Inspiring Students to Pursue Computing Degrees, Communications of the ACM, Vol. 50, No. 10, 67-71. Feller, J., & Fitzgerald, B. (2002). Understanding open source software development. Boston, MA: Addison-Wesley. Forrester Consulting (2007), Open Source Software’s Expanding Role in the Enterprise, http://www.unisys.com/eprise/main/admin/corporate/doc/Forrester_research-open_source_buying_behaviors.pdf, March 2007. Guzdial, Mark & Soloway, Elliot (2002), Teaching the Nintendo Generation to Program, Communications of the ACM, Vol. 45. No. 4 17-21 Lin, Yu-Wei, Zini, Enrico, (2008), Free/libre open source software implementation in schools: Evidence from the field and implications for the future, Computers & Education 50, 1092–1102 NetCraft (2008), August 2008 Web Server Survey, http://news.netcraft.com/archives/web_server_survey.html, accessed on August 28, 2008. Perens, B. (1999). The open source definition. In C. DiBona, S. Ockman, & M. Stone (Eds.), Open sources: voices from the open source revolution. Sebastopol, CA: O’Reilly Shah, Sonali. (2006), Motivation, governance, and the viability of hybrid forms of open source development, Management Science 52 (7), 1000-1014. Spinellis, Diomidis (2006), Open Source and Professional Advancement, IEEE Software, September|Octorber, 70-71. Stephanie Freeman, (2007), The Material and Social Dynamics of Motivation: Contributions to Open Source Language Technology Development, Science Studies, Vol. 20, No. 2, 55-77 Surran, Michael, (2003), Making the Switch to Open Source Software., T H E Journal, Vol. 31 Issue 2, p36, 4p Watson Richard T., Marie-Claude Boudreau, Paul T. York, Martina E. Greiner, and Donald Wynn, Jr. (2008), The Business of OPEN SOURCE, Communications of ACM, April 2008/Vol. 51, No. 4, 41-46. Appendix: Tables and Figures Figure 1. Positions of the respondents Figure 2. Company Type Figure 3. OS Familiarity Figure 4. Worked With OS Developer Figure 5. OS in hiring and OS in Promotion Figure 6. OS as a Good Indicator of Ability Figure 7. OS as effective as Proprietary but not as effective as diploma Figure 8. Importance of factors related to OS experience Figure 9. Rankings of OS activities in importance Figure 10. OSS project characteristics and impact on evaluation Table 1. OS Familiarity Frequency Percent Valid Percent Cumulative Percent Valid Very Familiar 89 89.0 89.0 89.0 Somewhat Familiar 11 11.0 11.0 100.0 Total 100 100.0 100.0 Table 2. Worked With OS Developer Frequency Percent Valid Percent Cumulative Percent Valid Yes 85 85.0 85.0 85.0 No 15 15.0 15.0 100.0 Total 100 100.0 100.0 Table 3 Used OS in Evaluation Frequency Percent Valid Percent Cumulative Percent Valid No 50 50.0 50.0 50.0 Yes 50 50.0 50.0 100.0 Total 100 100.0 100.0 Table 4 OS in Hiring Frequency Percent Valid Percent Cumulative Percent Valid 7 30 30.0 30.0 30.0 6 37 37.0 37.0 67.0 5 21 21.0 21.0 88.0 4 10 10.0 10.0 98.0 2 1 1.0 1.0 99.0 1 1 1.0 1.0 100.0 Total 100 100.0 100.0 (7-Strongly Agree, 6-Agree, 5-Slightly Agree, 4-Neutral, 3-Slightly Disagree, 2-Disagree, 1-Strongly Disagree) Table 5 OS in Promotion Frequency Percent Valid Percent Cumulative Percent Valid 7 13 13.0 13.0 13.0 6 22 22.0 22.0 35.0 5 21 21.0 21.0 56.0 4 27 27.0 27.0 83.0 3 6 6.0 6.0 89.0 2 9 9.0 9.0 98.0 1 2 2.0 2.0 100.0 Total 100 100.0 100.0 (7-Strongly Agree, 6-Agree, 5-Slightly Agree, 4-Neutral, 3-Slightly Disagree, 2-Disagree, 1-Strongly Disagree) Table 6. OS as a Good Indicator of Ability Frequency Percent Cumulative Percent Valid Strongly Agree 20 20.0 20.0 Agree 39 39.0 59.0 Slightly Agree 21 21.0 80.0 Neutral 11 11.0 91.0 Slightly Disagree 2 2.0 93.0 Disagree 3 3.0 96.0 Strongly Disagree 4 4.0 100.0 Total 100 100.0 Table 7. OS is As Effective As Diploma Frequency Percent Valid Percent Cumulative Percent Valid 7 10 10.0 10.0 10.0 6 17 17.0 17.0 27.0 5 18 18.0 18.0 45.0 4 20 20.0 20.0 65.0 3 13 13.0 13.0 78.0 2 14 14.0 14.0 92.0 1 8 8.0 8.0 100.0 Total 100 100.0 100.0 (7-Strongly Agree, 6-Agree, 5-Slightly Agree, 4-Neutral, 3-Slightly Disagree, 2-Disagree, 1-Strongly Disagree) Table 8. OS As Effective As Proprietary Frequency Percent Valid Percent Cumulative Percent Valid 7 28 28.0 28.0 28.0 6 34 34.0 34.0 62.0 5 18 18.0 18.0 80.0 4 10 10.0 10.0 90.0 3 5 5.0 5.0 95.0 2 5 5.0 5.0 100.0 Total 100 100.0 100.0 (7-Strongly Agree, 6-Agree, 5-Slightly Agree, 4-Neutral, 3-Slightly Disagree, 2-Disagree, 1-Strongly Disagree) Table 9. Factors related to the OS experience Number of Years Programming Language Operation Systems Skills Supported Or Compatible Skills Used by Competitor N Valid 100 100 100 100 100 Missing 0 0 0 0 0 Mean 4.94 5.52 4.89 5.86 5.08 Std. Deviation 1.469 1.267 1.497 1.119 1.405 Table 10. Rankings of OS activities in importance Programming Architecting Documentation Testing and Debugging Initiation and Lead Coordination Promotion and Advocating Consulting and Support Recruiting N Valid 100 100 100 100 100 100 100 100 100 Missing 0 0 0 0 0 0 0 0 0 Mean 6.01 5.94 5.28 5.58 5.30 5.24 4.95 5.09 4.75 Std. Deviation .870 1.071 1.272 1.065 1.193 1.408 1.321 1.288 1.274 Table 11. OSS project characteristics and impact on evaluation Project Popularity Compatible with Customer Base Fits Company Own Projects N Valid 100 100 100 Missing 0 0 0 Mean 4.90 5.23 5.55 Std. Deviation 1.453 1.302 1.175