Sunday, April 3, 2011

Careers in Open Source


With the deepening economic slowdown enterprises have started looking hard at optimizing their IT budgets, in some cases even resorting to free and Open Source solutions and softwares to address to their needs. The adoption of Open Source in enterprises will automatically imply a need for employees having familiarity with Open Source technologies. Here we look at what all opportunities that you can look at to start a career in the Open Source domain
Today, many applications are being developed in the Open Source environment and are gaining wider acceptance. Open Source is no longer synonymous to Linux and Java, but has matured to several middle-ware, ERP, BI and other enterprise applications. A recent survey by Gartner suggests an increasing role for Open Source as part of business strategies in the coming years. Numerous developers from around the world are contributing to Open Source software and the ratio of contributing developers is witnessing a higher growth. Sun Microsystems, Google, SourceForge, Apache and many other organizations have several Open Source projects hosted and supported by them. It's not only the developer community that has been actively collaborating to build Open Source solutions all the while, but even enterprises are showing interest in the business viability of Open Source solutions. Hearing all the buzz about the Open Source model and its adoption by organizations, and looking at the number of organizations that are initiating their own Open Source projects, one is tempted to wonder how to make a career in this wide arena.
How to start a career in Open SourceOpen Source is a wide domain and there isn't any fixed path that one can tread to make a career. There are two ways in which one can kick-start a career in Open Source technologies. The first will pay you while the second will cost you. You can get trained in one of the Open Source technologies and subsequently be hired by an enterprise where it is used. The other way encompasses the true essence of the Open Source, of not just being a user but a contributor. Contributing to Open Source doesn't pay you unless you are working for an organization that distributes under the BSD license, like Red Hat or Sun. Contributing to Open Source doesn't cost you a dime, but you need to devote time and effort, and this pays you in form of recognition in the Open Source arena.

Not everyone is lucky enough to get hired by an IT enterprise where he or she could get involved in a high-profile project of their interest that would also help them in career growth. In fact, people with the necessary skills and knowledge strive hard but are not able to get the work or project where their interest lies. Open Source on the other hand, gives you that opportunity where you can choose the project of your choice; the project that matches your skills and also your area of interest. Open Source projects are typically created as collaborative efforts where programmers improve upon the code and share the changes within the community. The kind of contribution you make for an Open Source project is visible and can land you job offers from enterprises that want pros in that domain. Certifications do acknowledge your skills and are generally accepted by the industry, but your work for an Open Source project is visible and gives instant proof of your knowledge to a prospective employer.
Every component in our software product portfolio is based on, or stems from an Open Source heritageHow has the Open Source domain evolved in recent times? What are the notable trends ?
Santhosh d'Souza, CTO, Sun Microsystems

Open Source technologies are finding increasing acceptance in the enterprise for a variety of reasons. Economic factors have always played a big role in the re-evaluation of IT infrastructure, resulting in strategies like cloud computing, virtualization and adoption of Open Source software in the enterprise. The maturity of several Open Source projects and enterprise class support options that are available now for Open Source applications also accelerates the adoption of such software. Sun Microsystems fosters and reflects these trends in our technology strategy and business models. The recognition by enterprises that a slew of Open Source technologies are well supported by vendors like Sun Microsystems has resulted in those technologies being deployed and used in mission critical environments.
How can a developer benefit from contributing to an Open Source project? Do enterprises recognize such contributions while recruiting?Participating and contributing to an Open Source project provides several benefits to a developer: such a project allows a developer the chance to work on a product through it's life cycle. There are no constraints on the amount of time and the scope of the contribution thus enabling the developer to devote as much time as is available to him, and so also to develop brand new code, optimize existing code and/or fix problems reported by users of the code.Participating in Open Source projects also enables a developer to work on cutting edge technologies and frameworks. Most of the best known developers across the world are active in one or more Open Source projects. Enterprises are increasingly evaluating Open Source expertise and such experience is now sought after in prospective IT employees.
Open Source as the first stepAs the source code of Open Source is available, it gives you the opportunity to fix possible bugs, which is not possible with proprietary closed source products. For instance, if you want to learn how a web server establishes HTTP1.1 request, you need to put sniffer tools to a web server like IIS. But with Apache web server, which is Open Source, you can directly peek in the code of the server and know how the request handling works. It's not necessary that you have to change or modify the source code to become a contributor. You can join projects at sites like SourceForge, Codeplex, Google Code or even start your own project. Alternatively, you can join commercial Open Source projects where the chances of being paid for the contributions are also high. Fedora, Mozilla, Apache, Alfresco, Pentaho, etc are some of the commercial Open Source projects that require specific skills. Once you join a project of your choice, you can start things off by being a tester of the project while gaining more understanding of the technology behind it. And then you can start filing bug-reports and provide their solutions. You can also contribute towards the project by doing its documentation.
Shankar Iyer, 
Director – Learning Services, Red Hat
As Open Source technologies are gaining maturity there is a paradigm shift from it being just a technology fad to today being a mainstream business reality. With Open Source technologies having clearly proven themselves all these years in assuring performance, security and scalable solutions while lowering TCO, there is substantial momentum towards deploying Linux and other Open Source technologies within enterprises. Security is another area which is robustly addressed by Linux. The technical workforce for Linux has increased manifold in the last few years, which is just the tip of the iceberg. As the trained technical workforce meets only 1/3rd of the Linux jobs at present, the future is bright for Open Source enthusiasts.
As a developer you can learn various coding methodologies being adopted, which you could have otherwise learned at later stage of career in an enterprise. Your contribution enhances your resume and presents your credentials to the prospective employer. So engaging in Open Source projects in college and during free time benefits you in knowledge enhancement as well as adds credentials to your resume. If you had been involved with commercial Open Source projects like Jboss, Alfresco, PostgreSQL, etc. there are chances that your contribution could land you a job from parent companies. Also companies that provide support and services for that technology can offer a position matching your contribution.
Young engineers who consider Open Source as a career option can begin their career without any fear irrespective of cost-cutting or economic slowdown, for Open Source is a great alternative which suddenly has gained huge popularity
Naresh Shah, Managing Director, IDC & Vice President, Global Engineering Strategy, Novell India
How do you see Open Source as a career option for beginners in the current economic slowdown?Well, if I talk of today's scenario, one should probably be more interested in the Open Source software rather than any other industry. There are two aspects in this field: wider group of developers who are being involved in communities, others are involved in a proprietary software in companies, which tends to be cheaper. In general, if companies are looking for rationalizing the cost structure the Open Source is much viable.
In how many ways can a professional contribute to Open Source?In Open Source community there are many freelancers, who are contributing to several Open Source projects. There are professionals also in the company where they work, and then in free time, according to their interests, contribute to their Open Source project. So generally there are lot of freelancers who are participating in Open Source area. Definitely, companies do look for hiring people either in India or abroad who are better known and have made significant contributions in Open Source environment.
Opportunities in Open SourceAs enterprises adopt more and more Open Source solutions, they seek employees with familiarity and competence in Open Source technologies. There are various ways in which a professional can progress in this domain. He can be a consultant to an organization which is implementing an Open Source solution like a mail server or security solution. On the other hand, there are organizations which are providing support and services for Open Source solutions and are also engaged in the development of such solutions. You can join organizations such as Red Hat or Sun Microsystems and work for the development as well as support for the product.
Chandika Mendis,Director and Head of Global Technology Office, Virtusa
There will be continuing demand for Open Source savvy engineers to support, enhance and maintain Open Source based systems and solutions. Involvement in Open Source brings a lot of visibility to talented individuals who would otherwise not have an opportunity to showcase their creativity. Open Source also touches many aspects of the software development profession. Publicly recognized work and code is always a good thing to have, especially when joining software engineering organizations such as Virtusa. In an interview you will not only be able to showcase your past experience, but how well your code or tool has been peer reviewed and accepted by a larger global community.
To start off, you'll have to develop skills over a product and then target the company which is into support and services for that product. Else, if you aim to be a consultant, you would have to start building your portfolio. You can help an organization to setup the Open Source product and implement it and then offer your expertise over that product for support and services. For example, if an organization needs to implement an ERP package, it can either opt for tried and tested proprietary software from SAP or Oracle that would cost them a fortune or they can look at Open Source ERP packages like OpenBravo and implement them, for which they will just have to just pay for support and customization. But for implementing such packages and integrating them with other services within the organization, they need professionals who have expertise over that product.

No comments:

Post a Comment