Alright, I hate to post another "Who's hiring?" thread, but it seems as though Python jobs are suddenly getting a bit hard to come by lately. Am I just not looking in the right places, or is Python not a very hot skill right now?
My experience is limited (although unusual) and my exposure to the current job market even more so. However, it's my impression that there are very, very few "Python jobs." It's becoming more and more the case that multiple skills are required, and frequently Python is one of them. However, it's common to find that people are looking for "C++ and Python" or "HTML, Python, SQL and framework."
We're not hiring at the moment, but we use Python extensively. Even so, if someone was primarily a Python programmer, without equally strong skills in something else, we wouldn't be able to hire them.
As I say, strongly biased, unsupported by statistics, random opinion.
As a side note, I noticed that someone down-voted my comment. That's fine, you obviously thought that 4 points was more than it should have, but I'd be interested to know why. To my mind the things I said are relevant to the enquirer given that I am an employer in a shop that uses Python extensively. I clearly marked it as my personal opinion to try to make it clear that I wasn't speaking for the industry as a whole.
So anyone who thinks my comments as stated are inappropriate and deserving of a down-vote, please let me know so I can learn. My email is in my profile if you prefer that route.
Again, speaking personally, not for us. We would need "Python and C++" or "Python and assembler" or "Python and web site management" or "Python and MatLab." For others, I'm sure "Python and SQL" would be a reasonable combination.
But perhaps the real point is that "Named Language" only sells to HR departments. The people who really do the work are looking for people who are "Smart and Get Things Done(tm)." Listing fluency in only one language seems to mark a candidate as someone who doesn't program because they want, but program because they're trained. I've hired someone who couldn't program in any of the languages we cared about, because he could clearly program in a range of other languages, and was a natural problem solver.
I recently read a remark (third hand) from a basketball coach. They said: "I hire tall players. I can teach how to play, but I can't teach height."
Curiousity, puzzle-solving, hacking about, learning, playing withh computers, these are things that show that you are fun, smart, interested, self-directing, and generally have the potential to be useful.
I've got off-topic. Sorry. Hope that helps - there's lots of other advice here.
I've seen a fair few jobs for python and GIS, python and finance and python and most types of engineering. I agree that there doesn't seem to many pure python jobs, but lots of industries are using python as their in house language of choice. However they also expect you to have a good working knowledge of the relevant industry as well.
Very true, we've got a lot of Django stuff going on around here. Discovery, NASA, PBS, Washington Time, Washington Post, and a number of startups all using Django in one capacity or another.
Speaking of which, if you're Python savvy and want a job in the DC area either sysadmining a large Trac install or developing (mostly) Django sites we're hiring right now:
You also might want to try getting in touch with the Python Software Foundation: http://www.python.org/psf/. Among other things, they're currently researching ways that they can be more useful to the community, and I know that things like job boards and job fairs for Python programmers have been proposed.
What sort of Python job are you looking for? I know that there is definitely demand out there for Python programmers who work with Django (a web framework built on Python, for those who don't know). We (Discovery Creative—part of Discovery Communications, parent company of the Discovery Channel—out of Silver Spring, MD) are currently looking for Django/Python people.
It's less ideal, but not impossible. Drop me an email if you're interested (josh_ourisman@discovery.com) and I can pass your info along to the right people.
Unfortunately, I've been informed that HR will not allow us to consider remote candidates for some asinine reason. So unless you're able to work out of our offices in Silver Spring, MD I'm afraid we're stuck. :(
(I'm hoping we can get around this somehow with Discovery's other offices—which are literally all over the world—but we'll see how that goes.)
What are your criteria? Do you have a geographic location that the employer must be within? Do you have a minimum salary you need to make (before bonus or equity)?
We just finished a hiring round, which included Python. I expect that we'll wind up hiring some more in the not too distant future.
For what its worth, I post my jobs on Craigslist and at local university offices first, only falling back to the big job boards in a worst-case scenario because as an employer they present a poor signal-noise ratio.
I use python all the time, but I'm an embedded developer. So, the python code is just for internal tools and rarely ships. Therefore, a posting for my job would require C and assembly not python. However, it would definitely be useful.
I don't think many places pick Python because there are fewer people who know it. I know some people who use it in their jobs though and their employers sort of just understood that people had to learn it on the job. I wouldn't say Python is a hot skill really but it depends on where you want to work.
You may want to keep in mind that using "ELT" vs "ETL" (even if that's what order Teradata works in) makes it harder to search for the job on most sites.
FYI -- I was about to apply for this until I noticed the 2-month contract. I'm more junior than what you're looking for but if you dropped the pay & extended the contract a bit I'd definitely be interested.
If you know Python and Teradata, please send me your resume anyway to contract-mco@actifact.com and I will keep it on file for any future position. It's very hard to find people with both Python and Teradata skills.
The contract starts out at 2 months because that is all my client will commit to at the moment, but I consider it likely to get extended if you are any good.
I don't mind missing out on applicants that are searching for the usual "ETL developer with Informatica or DataStage experience". I am looking for people with strong SQL, not a particular ETL tool. Thanks for the suggestion.
I currently do freelance work, and a lot of it has been "write me a little application that helps me search these websites for these terms relevant to the services my business provides". Python is very well suited to such tasks.
There seem to be quite a few smaller-to-medium web-shops using python.
It's interesting that this is sort of self perpetuating, though. I was looking for python developers (I sort of still am; Python + NLP), and literally nothing promising came by. Part of that was being located in Scotland, but still. I changed the job ad to Python + Java and got a ton of recruitment agency spam as I had clearly hit some kind of programming-drone buzzword (not one of the candidates foisted unconsentingly on me looked remotely interesting). As a result I wouldn't hire for either skill again - as other posters in this thread have alluded to, it's more about general ability than specific Python experience, especially as Python isn't too challenging to pick up.
The startup I work for is hiring python UI devs. We're based in NYC. Feel free to email me if you're interested or want more information. We're using django with mako templates and (largely) MongoDB as the backing store.
The limit of my response is but of my own humble opinion.
Python is a relatively simple language, with a small learning curve, and many applications. I've seen python used as a tool more than a primary technology for shops (unless they are a web company running Django.)
My advice is that it seems like you are looking at your career a little narrowly if you are simply looking for "python jobs" because it doesn't seem like you are willing to challenge yourself.
Do a little more personal stretching and you may realize there are more real opportunities than you have previously allowed yourself to notice.
I can only assume the downvotes are due to my explanation of python as a language.
When looking for jobs, you have to see how the business world views a certainly technology, not a collection of personal opinions.
Python is a great tool no doubt - but I see little in the way of careers revolving around just python knowledge. In most hunts I see it as "icing on the cake."
But again - take my word for what its worth - a guy on the internet. However, the fact the OP even posted this question only supports my argument.
My opinion is that as a stand-alone language Python can do nothing that can not be done better with other, higher level, faster or more proven languages.
However, I think Python has a solid place in providing scripting support - it sure is a lot faster to install and start using than it is to write a scripting language from scratch in your language of choice, and Python fits most tasks well (the only exception I've come across is real-time rendering applications, although I haven't tried newer versions since about 2005...).
However, did you know that Sound Spectrum, the maker of G-force that was used in Apples iTunes as the high speed visualizer, uses python as a high performance scripting environment that runs through bindings in C to openGL.
So theres a direct application - but here it also requires Graphics knowledge and high performance C++.
I work at a major (the biggest?) telecom equipment provider. For a couple of years, I've been doing ad-hoc Python scripts (say, 3000+ lines) to interact with network nodes, based on customer requests. So yes, there is room for professional, non-web related Python. I try to push the language for more developments, but it's hard to convince managers. I prefer the tools I make to the standard, corporate fat applications we sell for millions. If anyone is hiring on those skills, I'll be glad to hear offers.
"Ad hoc is a Latin phrase which means 'for this purpose'. It generally signifies a solution designed for a specific problem or task, non-generalizable, and which cannot be adapted to other purposes." -- http://en.wikipedia.org/wiki/Ad_hoc
No mention to the size of the solution, big or small. The point here is the specificity.
I doubt this is representative, but we are a C++/Qt4 ISV and I'm looking for a Python/Django intern for the summer to help with some internal web sites and possibly setting up a customer portal (read $12-$15 an hour, no benefits)
In other words, Python is an on-the-side language for us that I would look for say a CS undergrad student to fill the need, where as for our C++ devs I have a much higher bar of required experience/education.
I have been using python for network related stuff.
From this thread, it looks like python is being used mostly as python/django or for in house stuff only. Also where I come from, I hardly see a python job add without mentioning django. Is it correct to assume that there are very few industry jobs out there for python programmers who are not into web programming?
We're based out of Austin, we use python / django extensively. I would say that we're really efficient at this junction and just don't need to hire another person (yet), but we also can't afford it since we're just starting. Nevertheless, speed and elegance does seem to be a benefit on the surface... 1 python dev = 2-3 et al.
There's no such thing as a "Python job." Anyone who can't pick up Python in a week isn't worth hiring, and conversely, being productive in Python isn't proof of technical ability. Unlike with C++, Lisp, or even Java, if I was hiring for a Python shop, I wouldn't stress Python as an important qualification for the position.
That is silly. Of course hacking in any language is possible after one week of experience. But, someone who has many years of experience with any set of tools will likely have a serious productivity advantage over someone with no experience.
Some programmers prefer writing code in Python, because they find it more enjoyable than, e.g., Java or C++. These programmers look around for jobs mentioning Python, for obvious reasons.
Python is straightforward and intuitive, but I don’t think anyone can master it in a week. For example, programmers used to writing Java code tend to write long, unnecessarily over-structured, un-idiomatic Python code. This is not because they’re bad programmers, but because they aren’t used to writing Python, and haven’t read lots of good Python code.
[Replying to myself since there are so many people who think this is silly.]
There are many, many people who could be good Python programmers within a week. Obviously a programmer with only C++ or Java experience could not; I only mentioned those languages for contrast, because you wouldn't hire someone to write C++ unless they were already a good C++ programmer.
The differences in style between Python and Ruby or Python and Perl, modulo the differences related to the available language features (which enforce themselves, and which account for most of the difference), are on the same scale as style differences between different C++ shops. You expect a good C++ programmer to adapt to the local dialect (assuming he has the technical chops to do so), so why wouldn't you expect a Perl programmer to adapt to Python? There's no way you would pass up a smart Perl or Ruby programmer for a Python job. (Vice-versa is another matter.)
As for experience with other tools, looking at Python in that context actually strengthens my point. When you interview a developer, you don't bother asking about build tools, IDEs, SCMs, or testing frameworks unless they're applying to be the local guru. I've never asked a candidate if he knew how to build a .deb package. I've never worried about how much a candidate knows about Eclipse. (Or Jira, or gdb, or cvs.) The cumulative amount of tool-specific knowledge required to do my job dwarfs the complexity of Python, but I really don't bother with that stuff when I'm interviewing somebody for my group.
A big technology like Django might be a different question. Django (as much as I've seen of it) seems to be considerably more complicated than Python. I could see wanting to hire a Django developer. But then it's a Django job and not a Python job, except by implication.
"Tell me about your Python experience"
"Well I started learning it about a week ago - I think I've pretty well mastered it."
"Thanks, we'll get back to you."
We're hiring Python programmers. Or rather, we're hiring strong programmers, and we use Python. http://www.woti.com/ ... DC area, no telecommuting, must be a clearable US citizen.
We're hiring - http://jobs.hiidef.com/ - full time, distributed team. We're a consumer web incubator. Feel free to contact me directly at johnwehr@hiidef.com.
We're not hiring at the moment, but we use Python extensively. Even so, if someone was primarily a Python programmer, without equally strong skills in something else, we wouldn't be able to hire them.
As I say, strongly biased, unsupported by statistics, random opinion.