About a year ago, Paul Graham wrote about what he refers to as “the Python Paradox”. He stated that people who learn Python typically aren’t doing it in order to get a job; there are technologies which can boast more available jobs. They do it because they have discovered what a great language Python is and have subsequently grown quite fond of it.
I would like to think that there are pockets of Python programmers all over, just waiting for an opportunity to be paid to program in Python. I would like to know where they are, though. I have been looking in Atlanta, GA for people with Python programming skills who are looking for a job and have come up with fewer interested job seekers than I would have expected.
Perhaps people with Python skills are already working in a job where they can use those skills. Or, perhaps they are content where they are, working with non-Python technologies.
I wonder what the common experience is. If you are looking for a Python job, are there many jobs available? What steps are you taking to acquire one? If you are hiring for a Python job, are you coming across many seekers with experience? What are you doing to find them?


Not really an issue
I'm on the mailing list through which job postings for http://www.python.org/Jobs.html go and there is a steady stream and about 75 listings posted right now. At the same time, my local users group in Boston has over 100 members and the most common question is "how do I get a job doing Python?". I think the two do match up more often than people may think.
However, clearly Python is still a relatively small niche in many areas and in other areas like Mt View CA (Google is a heavy user of Python) there are tons of Python programmers but they are happy and don't want to change jobs. Also in Boston it does seem like the newbies are the ones looking for Python jobs and the more experienced users are happy and not looking.
Whatever the case may be, the bottom line is that any decent experienced developer can pick Python up and be working productively in a few days (really!) so for me, as an employer, I'm really not too concerned about it.
Not really an issue
Wow. 100 members in the local Python group. Wow.
I couldn't agree more with the "any decent experienced developer can pick Python up and be working productively in a few days" comment. I'm just wishing I could find some folks with some interest in writing Python code for a living.
Not really an issue
This sounds like you're making an emotional decision rather than a business decision, and that's rarely a good move.
I'd look at using Perl instead - plenty of good Perl coders for hire, more infrastructure and support too.
Is python really the best tool for all the work you are doing - would you not benefit from bringing in Perl and/or C#? Both would cover weaker areas in python and provide a mixed set of skills - cross training decent coders won't be a problem.
Not really an issue
I'm really curious about what I wrote in my initial or subsequent post that makes you think I've made an emotional decision. And what was the decision that I made which was emotional rather than rational/business-driven?
I can only guess that the decision you're talking about was using Python at all. I'm using Python primarily because a large portion of the application I test is written in Python and I am able to natively call it rather than come up with some other means to call the code I test.
I coded in Perl for 1-2 years before I discovered Python. I have an easier time with Python's object model than Perl's. I also like Python's "there should be one and preferably only one obvious way of doing something" rather than Perl's "there's more than one way to do it" philosophy.
As to C#, I find Python (and Perl) to be more agile than C# (or Java). I don't see a benefit at this point in writing C# for testing a Python application. I'm keeping my eye on IronPython, as we are looking at using some of the dotnet technologies soon. Even if we used nothing but C# in all of the applications I test, I would be more inclined to go with IronPython rather than C#, again, for agility's sake.
We are hiding
The fact is many Python programmers are able to programm in other languages and can get jobs doing something else. I live a few hours from Atlanta away and was looking for a job myself 10 months ago. I did not think there would be anybody hiring for Python here in the southeast and I am just not so religious about programming languages that it would absolutely determine my decision. I ended up doing Java web developement close to where I live. I figured big projects in slow languages=slow progress=job security. Alas, probably less fun too.
Programming Job
I'd love a job programming Python... but not in Atlanta ;-)
I live in the UK (officially the middle of nowhere in UK) - not too many programming jobs here.
Fuzzyman
Happy and/or obscure
A lot of good programmers who do Python on the side (or whatever project on the side) are... well, good programmers. Good programmers generally already have jobs. They might not be the jobs they most want, but they generally secure jobs, and not so bad.
If you want to find those programmers, you have to steal them. You have to find them, they won't find you.
Even look at a company like Google -- they have no lack of prestige. But (at least from what I can tell) they recruit aggressively for every position they have. I think they realize that no matter what prestige they might have, the best programmers won't just come because you ask.
It sounds like the job is going to be hard to fill from this perspective anyway. First, you are in Atlanta; that's not a very good draw. I'm sure there's lots of smart people in Atlanta, but getting someone to come to Atlanta is hard. Does anyone say I've always wanted to live in Atlanta, now's my chance! Which is to say, location really matters -- you can get better people inside the city, and you get better people when there's a vibrant city to be inside.
Second, you are doing QA. QA is not exciting. QA is so not exciting. Maybe you'll disagree... but in your heart of hearts, you know I'm right. No one has side projects in Python doing QA.
That said, you may be able to provide an opportunity to someone who needs it (someone young, perhaps), or you might be able to provide a more humane environment for someone who is disatisfied. But it's hit and miss.
Happy and/or obscure
OK - I'll bite.
The statement "QA is not exciting" is really subjective. The idea you have in your head about QA is not exciting to you. That statement says more about you than it does QA. I know what the majority of QA jobs out there require a person to do and I agree with you that those QA jobs are not exciting to me, either. Actually, I'd go out of my mind inside of a week if I had to do them.
But maybe you don't find writing code to test other code exciting. OK. That's fine. I honestly "in my heart of hearts" find it interesting at the lowest end of the spectrum. And there are aspects of QA that "in my heart of hearts" I do find exciting. Really, truly exciting. So, you may be wondering what that says about me. Stop laughing.
Hopefully, we can find some folks just as off as I am.
BTW - what did you mean by "No one has side projects in Python doing QA"? Just curious.
Not really an issue
bangpypers - The Banglore Python user group has more than 100 members too.
There are quite a few python jobs in Banglore, though most of them looking for `testing` experience .
If you are a Zope/Plone/Python programmer you can try Partecs -www.partecs.com , which is based in Bangalore.
heya
I keep seeing your links from the Daily Python URL. I run a software company here in Atlanta too. (see sabren.com or cornerhost.com )... I've never really tried to find a python programmer around here. I just work with people over the net.
BTW, I saw your other post about the atlanta python group too. I'd be happy to host a website for you guys. I do that for the agile atlanta group. Just let me know. I'd love to hear about the next meeting too!
-michal
heya
Hope you follow the links on Python Daily :-)
That's a great offer for hosting! Thanks! I'll pass it along to the group.
Happy and/or obscure
BTW - what did you mean by "No one has side projects in Python doing QA"? Just curious.
No one says, "I think I'll start a project to test someone else's project!"
People do write testing code and tools in Python. Every once in a very long while someone will submit tests to someone else's project, but usually it's the maintainer who has to brow-beat contributors to submit tests. And even those maintainers who do take testing seriously don't do it as a focus. Even TDD isn't test-focused, it's goal-focused; it's a testing methodology which tries to make testing enjoyable for someone who really cares about writing software.
So, that's why I think for most programmers (I'd even wager to say "the vast majority") QA isn't interesting. It's important, but typing is important and essential to code, but it's not interesting -- I think that's the best you can manage.
Now, your QA job might be fun, but you have an uphill battle to get a potential candidate to understand that, especially someone who really cares about "fun". Maybe you need to bait and switch, and leave "QA" out of the job description ;)
Not really an issue
The reason to use Python is that it's more productive to work with and results in more maintainable code. For me, getting stuff done fast and well outweighs every other consideration. I'd call it pragmatic more than anything.