Friday, January 29, 2010
Critical infrastructure under cyber attack: McAfee
The report "In the Crossfire: Critical Infrastructure in the Age of Cyberwar", commissioned by McAfee and authored by the Center for Strategic and International Studies (CSIS), also found that the risk of cyberattack is rising. Despite a growing body of legislation and regulation, more than a third of IT executives (37 percent) said the vulnerability of their sector had increased over the past 12 months and two-fifths expect a major security incident in their sector within the next year. Only 20 percent think their sector is safe from serious cyberattack over the next five years.
Many of the world's critical infrastructures were built for reliability and availability, not for security. Traditionally, these organizations have had little to no cyber protection, and have relied on guards, gates and guns. Today however, computer networks are interconnected with corporate IT networks and other infrastructure networks, which are accessible from anywhere in the world.
"In today's economic climate, it is imperative that organizations prepare for the instability that cyber attacks on critical infrastructure can cause," said Dave DeWalt, President and Chief Executive Officer of McAfee. "From public transportation, to energy to telecommunications, these are the systems we depend on every day. An attack on any of these industries could cause widespread economic disruptions, environmental disasters, loss of property and even loss of life."
"The recently identified Operation Aurora was the largest and most sophisticated cyberattack targeted at specific corporations, but it could have just as easily targeted the world's critical infrastructure," continued DeWalt. "The attack announced by Google and identified by McAfee was the most sophisticated threat seen in years making it a watershed moment in cybersecurity because of the targeted and coordinated nature of the attack."
More than a third of those surveyed believe their sector is unprepared to deal with major attacks or stealthy infiltrations by high-level adversaries. Saudi Arabia, India and Mexico emerge as the least confident. Two thirds of IT executives surveyed claimed that the current economic climate has caused cutbacks in the security resources available; one in four said resources had been reduced by 15 percent or more. Cuts are particularly evident in the energy and oil/gas sector.
Also, 60 percent of those surveyed believe representatives of foreign governments have been involved in past infrastructure infiltrations. In terms of countries that posed the biggest threat to critical infrastructure security, the United States (36 percent) and China (33 percent) topped the list. Many of the respondents believe that few countries are not capable of dealing with the threat. More than half (55 percent) believe that the laws in their country are inadequate in deterring potential cyberattacks with those based in Russia, Mexico and Brazil the most skeptical; 45 percent don't believe that the authorities are capable of preventing or deterring attacks.
"Governance issues are at the center of any discussion of security for critical infrastructure," said Stewart Baker distinguished visiting fellow at CSIS and Lawyer at Steptoe and Johnson. "The relationships between the governments and private sector organisations involved are complex but it is essential that each have faith in the others ability. The security industry will always strive to stay one step ahead, but in the absence of any technological silver bullet, regulation has a role to play in defending critical infrastructures around the world."
Google Transliteration for Indian languages
Google Transliteration service has already been available on the web in Gmail, Orkut, Blogger. "The IME transliteration technology is an innovation from Google India that furthers our corporate mission of making the world's information universally assessable and useful. We have extended this to several other international languages as well as we believe there is a huge global opportunity for this technology," Rahul Roy Chowdhury, Senior Product Manager, Google India, has said.
The application was conceived and developed in India at Google's Bangalore R&D Centre.
Wednesday, January 27, 2010
Careers in Software Testing
Those who say software testing as a career is inferior to software development need to get a sanity check done. Software testing is as important as software development activity. Do you know how much a simple software mistake can cost you? Rs 1 lakh, 2 lakhs, 3 lakhs...?? No clues?
$125 mn!!. Yes, in the year 1999 when NASA lost the $125 million Mars orbiter, a spacecraft that was meant to be launched in space to study Martian climate, weather, CO2, etc. This happened due to a flaw in its software.
Actually, there were two different teams involved in the mission-Lockheed Martin Engineering which built and developed Mars Orbiter for NASA and the other was the NASA flight team-both of which used their own units of measurement during the operation. Lockheed Martin engineering team used English units of measurement while NASA's team used the conventional metric system for a key spacecraft operation, which caused the navigation information to go haywire and the spacecraft crashed. Had proper procedures for the navigational software been followed, this irregularity might have been detected and the loss could have been averted. This is a classic example that shows the importance of having good software testing practices at place and the consequences one might have to face for not following them.
A Testing professional needs to understand the technicalities of databases, languages, GUI frameworks and OSes. He also needs to have analytical sense of mind and the ability to break open applications that seem to be perfect, and that how he can find loopholes in the applications. Today, organizations don't just want testers to have knowledge of testing but also require to have business domain knowledge, as well. |
The demand for niche skills like SOA testers are on the rise. Also, there are lot of avenues in test automation areas - scripting skills in the tools languages like VB, Java and other scripting languages like Perl, Shell, Python etc. Technical resources with capabilities to evaluate automation tools, create automation framework and reusable components are on demand. There is always a demand for good performance testers who can analyze performance test results, identify the bottlenecks and recommend tuning techniques. |
Today organizations have realized the importance of software testing and they do not want to face the embarrassment of their product or solution failing just because of a small mistake that gets overlooked.
Software defects are so prevalent and detrimental that they cost the U.S. economy an estimated $59.5 billion annually -about 0.6% of the GDP, according to a study commissioned by the Department of Commerce's National Institute of Standards and Technology (NIST) in 2002. So Quality assurance is a very decisive stage as testers should guarantee that all functional needs are met even when there's higher load. |
Specializations like security testing, SWOT testing, performance testing are the ones one can pursue in addition to create a lane for himself in the industry. There is a lot of need for testers to have industry domain specialization. For example, if you have been testing in the insurance world, you will be valued very high. Specializations with respect to type of testing or specialization with respect of the industry domain can be a good thing to pursue. Unlike developers, testers are expected to know everything about the product and application. Therefore, testers can even become a domain specialist, or a business analyst or even a product manager. |
Nowadays companies work at avoiding such defects from the start, so it is not just about detection of defects anymore. That's why they adopt standards like CMM, ISO, Six Sigma etc and taking all these developments as a cue, some IT companies have begin to leverage the power of good quality assurance practices, which has opened several new avenues in the field of software testing. Some companies have started positioning themselves as Independent Software Testing (IST) service providers who provide specialized software testing services to other organizations, to test their products or to device software testing practices for their processes.
Today clients are very cognizant of the cost implications of poorly tested products or solutions and strive to avoid this situation under all circumstances, since these directly result into financial as well as opportunity loss. Comprehensive and effective testing is the only �knight in shining armor� that could help businesses to plug these holes successfully. The only challenge is the current gap between demand-supply of Professional Testers which is widening across all geographies. |
In software testing area any knowledge which is gained as part of courses can just act as a starting point; however the major evolution happens on the job. Testing pros should look for opportunities to get hands-on experience which will help them sharpen their software testing skills. Software testing is more about being applied and pragmatic rather than just following academic experience. My organization while assuming that pros have a good academic back ground looks for a good attitude & ability to work in fast-paced environment. |
Looking at the pace of the recent developments happening in this field, there is no denying the fact that software testing is fast emerging as a lucrative career option; it enables rapid career growth, and has substantially moved away from the myth that if somebody can't make a career in development, then only does he settle down into testing.
Careers in Software Testing
Those who say software testing as a career is inferior to software development need to get a sanity check done. Software testing is as important as software development activity. Do you know how much a simple software mistake can cost you? Rs 1 lakh, 2 lakhs, 3 lakhs...?? No clues?
$125 mn!!. Yes, in the year 1999 when NASA lost the $125 million Mars orbiter, a spacecraft that was meant to be launched in space to study Martian climate, weather, CO2, etc. This happened due to a flaw in its software.
Actually, there were two different teams involved in the mission-Lockheed Martin Engineering which built and developed Mars Orbiter for NASA and the other was the NASA flight team-both of which used their own units of measurement during the operation. Lockheed Martin engineering team used English units of measurement while NASA's team used the conventional metric system for a key spacecraft operation, which caused the navigation information to go haywire and the spacecraft crashed. Had proper procedures for the navigational software been followed, this irregularity might have been detected and the loss could have been averted. This is a classic example that shows the importance of having good software testing practices at place and the consequences one might have to face for not following them.
A Testing professional needs to understand the technicalities of databases, languages, GUI frameworks and OSes. He also needs to have analytical sense of mind and the ability to break open applications that seem to be perfect, and that how he can find loopholes in the applications. Today, organizations don't just want testers to have knowledge of testing but also require to have business domain knowledge, as well. |
The demand for niche skills like SOA testers are on the rise. Also, there are lot of avenues in test automation areas - scripting skills in the tools languages like VB, Java and other scripting languages like Perl, Shell, Python etc. Technical resources with capabilities to evaluate automation tools, create automation framework and reusable components are on demand. There is always a demand for good performance testers who can analyze performance test results, identify the bottlenecks and recommend tuning techniques. |
Today organizations have realized the importance of software testing and they do not want to face the embarrassment of their product or solution failing just because of a small mistake that gets overlooked.
Software defects are so prevalent and detrimental that they cost the U.S. economy an estimated $59.5 billion annually -about 0.6% of the GDP, according to a study commissioned by the Department of Commerce's National Institute of Standards and Technology (NIST) in 2002. So Quality assurance is a very decisive stage as testers should guarantee that all functional needs are met even when there's higher load. |
Specializations like security testing, SWOT testing, performance testing are the ones one can pursue in addition to create a lane for himself in the industry. There is a lot of need for testers to have industry domain specialization. For example, if you have been testing in the insurance world, you will be valued very high. Specializations with respect to type of testing or specialization with respect of the industry domain can be a good thing to pursue. Unlike developers, testers are expected to know everything about the product and application. Therefore, testers can even become a domain specialist, or a business analyst or even a product manager. |
Nowadays companies work at avoiding such defects from the start, so it is not just about detection of defects anymore. That's why they adopt standards like CMM, ISO, Six Sigma etc and taking all these developments as a cue, some IT companies have begin to leverage the power of good quality assurance practices, which has opened several new avenues in the field of software testing. Some companies have started positioning themselves as Independent Software Testing (IST) service providers who provide specialized software testing services to other organizations, to test their products or to device software testing practices for their processes.
Today clients are very cognizant of the cost implications of poorly tested products or solutions and strive to avoid this situation under all circumstances, since these directly result into financial as well as opportunity loss. Comprehensive and effective testing is the only �knight in shining armor� that could help businesses to plug these holes successfully. The only challenge is the current gap between demand-supply of Professional Testers which is widening across all geographies. |
In software testing area any knowledge which is gained as part of courses can just act as a starting point; however the major evolution happens on the job. Testing pros should look for opportunities to get hands-on experience which will help them sharpen their software testing skills. Software testing is more about being applied and pragmatic rather than just following academic experience. My organization while assuming that pros have a good academic back ground looks for a good attitude & ability to work in fast-paced environment. |
Looking at the pace of the recent developments happening in this field, there is no denying the fact that software testing is fast emerging as a lucrative career option; it enables rapid career growth, and has substantially moved away from the myth that if somebody can't make a career in development, then only does he settle down into testing.
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 Source
Open 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 heritage How has the Open Source domain evolved in recent times? What are the notable trends ?
How can a developer benefit from contributing to an Open Source project? Do enterprises recognize such contributions while recruiting? |
Open Source as the first step
As 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.
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
How do you see Open Source as a career option for beginners in the current economic slowdown? In how many ways can a professional contribute to Open Source? |
Opportunities in Open Source
As 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.
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.
| Open source technologies and products to watch out for... | ||
| Domain | Technology/ Product | Additional Information |
| Middleware Suites | Glassfish, Jboss, Apache Geronimo | GlassFish is a Sun supported project. You can join the project or one of its several subprojects at glassfish.dev.java.net. While RedHat provides a commercial support for Jboss, a Java EE background will help you gain advanced skill over these enterprise application suite. |
| ERP | OpenBravo, OpenERP | SourceForge lists hundreds of open source ERP projects. You can gain expertise in these to provide support services to organizations in India |
| BI Suites | Pentaho | You can join this BI and DataWare house community at Pentaho.com. It is known that Pentaho has hired contributors to the community into the organization. |
| Enterprise Content Management | Joomla, Mambo, Alfresco | Gaining expertise in one such open source ECW product can land you implementation projects from organizations as they look for open source experts to help in its implementation and deployment. |
| Databases | MySQL, PostgreSQL | Sun provides certifications for MySQL database. You can be a contributor or else you can gain knowledge of the database as that might help you land up a DBA role for organization using an open source database. |
| Operating System | Linux, Solaris | For Linux you can join organizations that provide Linux distros like RedHat and Fedora, while OpenSolaris, which is Sun supported, can be joined as a project at opensolaris.org. |
| Programming Languages | Java, Perl, PHP | Java, Perl and PHP form the basis of many frameworks and other scripting languages. The demand for developers in these open source technologies and frameworks will always be there. |
The Open Source domain is not restricted to developers alone. Technical writers, legal advisors, etc are also required by Open Source projects. A technical writer shall do documentation for a project and that will help him in getting his work and knowledge acknowledged during recruitment.
Career Path
The career path for a professional will typically start from a programmer or developer, and then with experience, such a professional will be handling responsibilities like implementing, deploying and architecting the strategies around open source product deployment for an organization. With experience under his belt, the professional can then venture into the consultancy arena, or can move up his career to be a strategy officer for the organization who will be directing the complete open source adoption or initiative within the enterprise by evaluating products which will be the best fit solution for the organization. The career in open source domain can be rewarding, but the major hitch will be how you set off your career in this domain. One cannot just make a career as being a contributor towards a project, unless you are being paid for the contribution.
You reap the fruits of devoting time to open source projects by the contributions you make to open source. Enterprises are recognizing such contributions and that helps in being recruited by organizations for the open source technologies. The table below suggests some of the open source projects and some commercial open source products which you can join and gain expertise on to have a career as open source specialist in that field.
Making Money out of gaming
If Indian Gaming industry is compared to the gaming industries of Europe or US, you'll find that it's still at a nascent stage, but going by the reports of NASCOMM or Price Waterhouse Cooper, it is poised to grow at a tremendous rate in future. So if you are spending countless hours in front of your PC or console, pounding away at keyboard or controller to drive crazily or shooting down enemies, then you can seriously think of chalking out a career in games development.
The growing Indian games industry has opened up career avenues for professionals who have a unique combination of technology and creativity, and are passionate about gaming technologies and culture.
Games development as a career is not only fun-filled and creative, but also provides attractive global employment prospects.
Hot opportunities in Gaming
Entertainment industry is growing at a fast pace in India, and gaming has become a new genre of entertainment that is making huge progress in this vast landscape. As per the NASSCOM report, the gaming industry in India was estimated at $167 million in 2008 and is poised to see an annual growth rate of 49% to reach $830 million by 2012. The gaming industry comprises of not only PC and console based games but also mobile and online games. And with the spurt in broadband and mobile penetration in India, the latter two are transforming into a strong market segment for games development. The gaming consumption across platforms--PC, console or mobile has seen tremendous growth in the past few years. Mobile gaming has significantly caught up in India owing to the fact that mobile penetration in India is greater than PC penetration, and also that many Indian telecom providers are providing mobile games as value added services to their subscribers. The online gaming sector is fast growing in India and is being driven by the fact that availability of bandwidth isn't a hindrance for Internet users in India any more, and also that they have disposable incomes. Not to forget about social networking sites like Facebook, which have become a new platform for gaming.
All this has opened business opportunities for Indian game development companies to tap the market, and mobile gaming accounts for the larger piece of the Indian gaming industry and the trend is only expected to continue. Companies like Dhruva Interactive, Lakshya Digital, FXLabs are not only developing games for the Indian audience, but are also increasingly getting outsourced games development works from major international game development companies. Even on the online gaming front there are Indian companies that have forayed into development and marketing of such games, and have been successful (for instance Zapak). With games development taking up in India, in coming years, games development as a career can be the next addition to the vast resource pool of skilled Indian professionals. Outsourced game development activities is already a major revenue generation source for South Korea and Taiwan, and India can also compete with them. But there is a demand-supply gap, which is due to the lack of recognition for career prospects in gaming domain and also to the fact that there are no well-known educational institutes giving education or training in game development.
| Chris Thompson Vice President and General Manager, EA Asean |
Career opportunities
The game development industry is a varied mix of skills and knowledge. It can be divided into two categories: artistic and engineering. If you have artistic skills, you can pursue a career in game designing and visual art creation, but if you have Computer Science knowledge then you can opt for game programming, sound engineering and game testing. Game development is a highly creative field, and one can choose a role depending on the skills a person possesses. If a person has game programming as his skillset, he can have options in AI programming, game engine programming, and in game development itself, as it is the game programmer who lays the foundation of the entire gaming project. However, if you are creatively inclined, you can have career options in animation and graphics modeling, where you would be required to conceptualize characters, design the storyline for the game and its various levels and document it. India has no dearth of IT programmers, but such is not the case with gameplay designers. Gameplay is like the whole storyline for the game, if its interesting then only would a person play a game regularly. AI plays a critical role here. In Need for Speed, the game wouldn't be any fun if the traffic on streets doesn't move like real traffic. For instance, in scenes where police is chasing the rash drivers, the police need to have highly sophisticated AI to avoid collisions, follow them closely and figure out a way to pull you over. Thus, having an enticing game play ensures that the game shall be popular and gamers would play the game again an again. Be it mainstream gaming, online gaming or mobile games, all involve programming and art design, and there are plenty of options available for you in the gaming industry.
Skills required
'Game Programming,' as such is not a specific language, it can be any programming language that can be adapted for game development. If you want to be a game developer for AAA category games, which involves PC or console games, then you should know C++ as it is considered the industry standard for game development. Also, you should know game development libraries like OpenGL or DirectX. If you work with C#, then there is also XNA from Microsoft, which is a wrapper over DirectX to make game development easier. Game engines are the core around which a new game can be created. If you are starting with game development, you can use Unity 3D, Neverwinter Nights 2 or Pygame, as they are easy and have a great tool set for game development at the entry level. Unreal or Gears are game engines which are meant to be used by professional game developers. For the designing side, skills on animation and graphics tools like Adobe Photoshop, 3D Max and Maya are required, but importantly you need lots of creativity. For programming aspects of game development for mobiles, one needs to be skilled in BREW, J2ME and Flash Lite.
| Anuj Kacker |
Online gaming based on Flash and Silverlight technology is also catching up. You can create games for websites like Facebook, and your work is instantly visible to the world. Scrabulous was one of the most popular games on Facebook and was developed by two Kolkata based brothers, Rajat and Jayant Agarwalla. Developing games for social networking sites has come up as a new platform where budding game developers can showcase their skills and creativity.
Certifications
To get training for learning the nuances of game developmentin India, there aren't any government recognized courses available yet at the undergraduate or professional level. Institutes like Arena Multimedia and AAG offer certificate courses on game development. Global School of Animation and Games, Delhi is also providing undergraduate and professional level courses for game designing and programming. With their MBA program, they are offering gaming courses as electives so that budding entrepreneurs with a passion for gaming could have knowledge on various nuances of game development and its marketing and management. So, if you are from the software development field and have always been excited about gaming, then with some training on game programming, you can venture into games development. Similarly, if you have animation or graphics design skills then you can carve out a career in game design and enter the game development domain.
Careers in Cloud Computing
Looking at the benefits that Cloud Computing provides, enterprises are keenly observing and devising strategies on how to move forward in this domain. Be it as a provider of services on the Cloud platform or as an enterprise to migrate its applications to the cloud, most organizations have started venturing into this domain. Whatever be the benefits and adoption rate, there shall be need for new talent to help companies adopt to this latest technology. As can be seen from past experience, a new technology brings in new career opportunities and also makes old technologies redundant, you can expect the same from Cloud Computing.
IT professionals over the years have experienced how technologies evolve rapidly and realized the need to keep themselves in sync with the latest to survive in their careers. It is no longer sufficient to know the difference between Windows or Linux-based architecture. As the industry is becoming more service oriented, IT professionals have to learn about the various ways in which services can be delivered to customers. Software-as-a-Service (SaaS) model has already proved a good value proposition for enterprises, they just outsource their application requirement to a third party to manage and provide them with that service. And SaaS is just a pre-cursor to cloud computing. These days companies already use some form of the Cloud architecture, like virtualization or SaaS offerings. Therefore, it would just be a logical step for enterprises to move towards the Cloud architecture.
Cloud Computing is hot!
The likes of Google, Amazon, Microsoft have already initiated efforts in Cloud Computing and are betting big on its success and eventual adoption. The reason is evident from the benefits that an organization would accrue, like reduced start-up costs and investments, scalability and ability to have flexible and powerful computing platforms with no hassles of maintenance or licensing. Cloud Computing in coming years is going to transform the IT infrastructure space. It is a platform where service providers will deliver IT-enabled services to consumers just like a SaaS-based platform, but with new benefits like built-in elasticity and scalability. As of now, a SaaS-based service or application is on a hosted setup, where each application has a defined IT resource.
However, Cloud Computing is based on a more virtualized environment and there is no resource constraint for an application. An application hosted on Cloud platform should be able to harness the computing power of the resource with no constraints, ie if the requirement of an application increases, the resource allocated will also scale up dynamically. The elastic capability of Cloud Computing as an offering to enterprises should be of much sense to them, as they will have to pay for the resource that their application would be using, unlike a SaaS delivery model where they had fixed subscription fees for the service. Also, since more and more applications for organizational functions or processes are becoming standardized and less customized, there are more possibilities for larger enterprises to adopt and benefit from cloud computing.
| Manish Rathi AVP - Services, GlobalLogic |
Also, there shall be providers who will have the Cloud architecture-based infrastructure for providing services and there will consumers, which shall be organizations that will access services provided on the Cloud. Hence, there would be two-faceted impact on career opportunities for IT professionals, whether they are infrastructure engineers, software developers, networking or security experts. The positive impact would be that there are opportunities for them in organizations that plan to provide Cloud-based services. But the negative impact would be for professionals in organizations that move towards consuming Cloud-based services. Such organizations would focus on using economic resources for addressing their business needs rather than maintaining specialized personnel for running applications as they would use applications hosted on the cloud, thus making some IT jobs in their organizations redundant.
Opportunities for IT pros
As previously discussed, Cloud Computing involves two types of organizations. One the supply side are organizations such as Microsoft and Amazon, that offer IT services on the Cloud platform. The other is the demand side comprising of companies that consume such services. For the supply side, i.e. the service providers, there will be several opportunities created in different areas.
Software developers: In an IT product development company there will be need to create applications that would adhere to the Cloud architecture. As these applications shall be available as services and accessible through browsers, software development skills such as SOAP, AJAX, Web Services, etc. would be required to develop the applications for the Cloud platform. The difference would be that during project development one will have to remove any constraints that would not work on the cloud platform. According to true essence of cloud architecture, any application should be able to run on the platform provided it is properly architectured. Similarly, for professionals in the testing domain, performance testing would have to be done on applications meant for the Cloud. As Cloud provides elasticity and scalability features, they would have to conduct testing wherein they'll have to check whether an application is meant for 100 concurrent users and whether it can scale up automatically to cater to 10,000 users if there is sudden increase in traffic. Certainly, for the software developers or testers, there will be plenty of opportunities for Cloud Computing domain, provided they upgrade their knowledge by having proper understanding of the Cloud framework pertaining to their domain. Those having understanding of a content driven network, can leverage their skills on product development for platforms like Amazon EC2 and Google AppEngine, that provide a platform as a service for developing and hosting your application on their infrastructure. The application would be using their environment for database, operating platform, etc.
Infrastructure engineers: Professionals who are into IT infrastructure creation and management like networking professionals, virtualization and security experts can render their skills to enterprises who are setting up their own Cloud Computing framework. Cloud is an evolution of the Services Oriented Architecture. So, solution architects who are working with Service Oriented Architecture (SOA) would be able to catch on with the Cloud Computing concept very swiftly. Another area where Cloud Computing is creating an opportunity is within Security and Data Storage.
Skills required
If you look at job postings from enterprises venturing in the Cloud Computing domain, you will notice that there is a new profile created known as 'Cloud Architect.' But looking at the skillset for the job, you'll come to know that there's no rocket science involved for this profile, what is required are professionals who understand enterprise networking, security and virtualization aspects. Cloud platform is a new architecture, the underlying technologies for its usage are already existing. Likewise, for software developers, .NET or Java, the development requirements for building the application would remain the same, the only change would be that they have to re-engineer their applications as per Cloud's Architecture. This requires that both developers and the infrastructure engineers increase their understanding of the Cloud platform. And when their organization plans to have a Cloud Computing platform for their applications, then their understanding of the Cloud architecture will prove to be invaluable for the organization.
| Deepak Visweswaraiah Sr. Director � SSG Group, EMC India COE |
Security professionals will find a major place in the Cloud Computing environment. The reason is that with Cloud Computing what you are doing is taking away all your IT needs and giving it to a third party to manage, so here companies become a little sensitive about their corporate data being hosted on third party servers as there is lot of sensitivity about data. The recent Dynamic Denial of Service (DDOS) attacks on some social networking sites like Twitter and Facebook resulted in disruption of services for hours. If there is a similar kind of an attack on a Cloud service provider's infrastructure, that would result in disaster for those who are using their services. Therefore security is a major concern and addressing these concerns would be a prime job role for a security expert.
| Bhanu Chopra CEO, RateGain IT Solutions |
There are multiple areas and disciplines in cloud computing. Virtualization is the main theme that drives this technology. A good understanding and expertise in virtualization, ability to consolidate server and storage infrastructure, designing complex infrastructure environments, ability to handle much higher scales of data can be summed up as some of the skills that would be required in this domain.
Certifications
Having requisite certifications is one of the ways to convince prospective employers about your efforts in a particular field. The hype around Cloud Computing has been there for the last couple of years and whenever there is a new technology, there are various organizations that start certification courses. This is followed by professional institutes giving out certification courses in that field. The same hasn't happened in the case of Cloud Computing as it is still in a conceptual phase and organizations are using the Cloud platform for hosting and deployment perspectives, which is the bare-minimal usage of the real Cloud architecture. However, when adoption increases, we may see a slew of institutes and organizations coming up with Cloud Computing certifications. IBM has already taken initiative in this regard and started a course on Cloud Computing.