If you are a Fresh Computer Graduate and its time for you to choose your project and gain some work experience which will help you in preparing your resume and getting a good job. Very obviously you will search on any popular Job related website and you will find a popular language and you will look forward to working on a project using that programming language.
You will find there’s huge requirement for Java,.Net,C,C++ and you will choose one of them. There is no reason for you to choose Python as its not gonna help you in getting job. I think there is nothing wrong in this approach and the reason for choosing the language is quite justifiable.
How can one guage the popularity of any particular programming language ? If you visit any famous job related website you will find hardly any jobs related to python. The fact is that Python is not that hot in the Job market. Many Python Experts say that people learn Python because they like to program and they are not satisfied with the languages they already know. By saying so it creates the impression that people don’t learn Python because it will get them a job. I think its not a right way to look at it. Lets see What’s the job market like for python right now? Where is it going?
Python is used everywhere in almost all the sectors like Web Development ( Google, Yahoo, Linux Weekly News), Games (Battlefield2,Quark, Star Trek Bridge Commander), Graphics (Walt Disney Feature Animation, Jasc Software), Financial, Science (ABN AMRO Bank, Bellco Credit Union), Science (NASA, Biosoft, National Weather Service),Electronic Systems Development (Electronics Design Automation (EDA), Software Development (Red Hat, SGI Inc.), Education (University of California,New Zealand Digital Library) Business Software (IBM, RealNetworks). But why its not reflecting in the Job market?
If you search for Python related Jobs on any popular website , you will hardly find any jobs. I guess most of the companies post the python related job requirements on “http://python.org/Jobs.html”, even there you will find not much jobs where there is a specific requirement for python.
Lets look at it from an experienced programmer’s point of view. Suppose you have some experience with Java or C or C++ or any popular mainstream language, At the moment there are plenty of jobs available for these languages in the job market, why will anybody consider python from the career point of view. Will anybody take the risk to choose the python language with the hope that some day he will get a call for interview from companies like Google, Yahoo.
Everybody would prefer to choose the language which is most prominently used so that he will get a more scope and choice. Most development positions that I have seen require Java or C++ or .Net so how can learning Python benefit your career if there are little or no chance that an employer will consider using Python over other programming languages like Java?
Lets take a look at the possible reasons why Python is not doing well in the Job market and what can be done about it.
- Companies are not willing for a change : Are the companies not smart enough to realize the power of the Python Programming language. Well, certainly its not so but its not easy for them to
change their tested platforms and shift to Python. Also it depends a lot on clients requirements and choice.
- Acceptance of Python Language : Python is gaining wider acceptance and its use in many sectors is quiet amazing in the very short duration. Google is one of the heavy recruiters for Python, Still it will take some more time to accept the language.
- Python Certifications :High-Level Certifications will provide a way for Python programmers to prove their proficiency in the Python language. It will help the companies in the recruitment procedure. These exams should emphasize on thorough understanding of the most important elements of the language. Very few High-Level certifications are available at the moment.
- Python Training Courses : Very few Institutes conduct Python training sessions. Python Expert, Mark Lutz is contributing heavily in promoting Python and conducting training sessions in many part of the world for over a decade. Its very necessary to start this activity massively, More Institutions should contribute in conducting training sessions.
- Demand and Supply ratio : If a company chooses to write its software in Python programming language, i am doubtful about the availability of skilled Python programmers (atleast in this part of the world). India is one of the most renowned country for software development, if you search on
nokari.com or TimesJobs.com (popular job related websites in India), you will find hardly 2-3 requirements for Python and all will be from Bangalore based companies. People around me (in the IT field) are not even aware of the existence of the programming language called Python.
I am not sure about the demand of the Python in other countries but its certainly not the case like the programmers are waiting for an opportunity to be paid to program in Python. If so I would like to know where they are ?Its quite likely that people with Python skills are already working in a job where they can use their python skills Or they are working with non-Python technologies.
What can be done about it:
Use of Python in your job might introduce Python to the company. But be careful, use it as the opportunity arises, using it everywhere will affect on its acceptance. Lets see how to start, Entry point could be small tasks that are not so important. You can Write a small utilities to make you main operation easier. Its comparatively lot easier if you are introducing Python (or any new technology) in a small company as in the small companies there are fewer layers in the decision-making hierarchy. In the small companies you will face resistance from fewer people when you do something different. If you can show them the positive results then its very likely that they will adopt the new things that boosts productivity. To start In the big companies using Python locally might not disturb other functionalities as the development is divided into small teams for different areas of functionality. Its not easy to convince your colleagues, seniors that Python might be a better choice for any particular application.
Many Python Experts say that people learn Python because they like to program and not because it will get them a job. This approach is not going to help. If you can create the impression, “Learn the language , if you want to get a good job.”, It will definitely help in attracting programmers towards python.
Many good news for Python in the recent time, Guido van Rossum, the creator of Python Programming language joined Google, Nokia’s strong support towards python in the Mobile sector, Microsoft showed interest in Python (IronPython), Appistry’s Support to Microsoft IronPython 1.0 and so many more news. Lets hope these good news will very soon reflect on the popularity and the job market.
Python must concentrate on Job markets, An important reason for Java being so popular is that it had IT giants like Sun, IBM and ORACLE promoting it. Although Google and Yahoo do say that they use a lot of python, but still its not reflecting in the job market.
Python Software Foundation should think on this point seriously, I think Pycon 2006 is the best venue to discuss about this issue as more than 350 python experts will gather at Pycon 2006.
Although Python’s presence in the job market is not satisfactory but over the past 1 year the situation has improved a lot than expected. Learning Python will might not benefit your career but it will certainly help you to be a better programmer. If you have a bit more patience it’s definitely possible.