Published on March 11, 2018, 7:41 a.m.
Updated on April 10, 2020, 2:38 a.m.!
At any job I've had, I have always carried Python with me though. I have used it often to rid myself of redundant tasks. There have also been occasions where it made sense to create a tool or an app that made work easier for myself and others.
I have worked in a number of different jobs in technology and have easily found a use for Python in each of them:
Python has made it very simple for me to solve problems that I was not initially hired for at all of these jobs.
The monitoring software company I worked for used mostly Perl (for backend and the service work) and some Visual Basic (for GUI). This tool was written very well in that you could easily extend it with just about any language you wanted to use. At the time I started working there, there was not a monitoring agent for MySQL databases. A lot of companies were starting to use MySQL and for us, demand was emerging for a monitoring agent for it. It was easy to use Python to create such an agent. I was able to spend a lot of time on it and write decent enough code that my boss gave me an opportunity to create custom agents for customers using Python going forward.
When I worked for the government, I was able to use CherryPy to create a small content management site that solved a lot of our operations documentation issues. Of course, I could have used a number of different web platforms to do this but it was simple to use Python and CherryPy to develop the site. There was nothing fancy about it but we could have continued using a disjointed set of Word documents or paid a .NET or Java programmer to design it. We could have paid a lot of money also for Sharepoint or some other CMS at the time but it made more sense to for me to work on it and have it ready in a couple of weeks. After that, the boss gave me other things to work on that would allow me to use Python.
Working at another company, Python came in handy to create scripts to tie things together like content store drives on different coasts and others to handle data ingestion for search indexes. Bash scripts did well too but there were times when something required a little bit more complex logic and either Bash started to feel clunky and Perl became more unreadable.
As a technical support engineer it made sense to write my own scripts that parsed log files and property settings that could take quite a while to read and get to the meat of a problem a customer was having. It may seem a little time consuming to write your own utilities but I would argue that Python is a very good tool that's suited for this sort of thing.
It's true. There are some specific Python jobs out there. They do exist but they're still few and far between. And you can definitely improve your command of the language and knowledge of the toolset by practicing with it and preparing for job interviews.
My point with all this is that you can succeed in a lot of tech jobs with Python simply by using it to solve most problems as you go. It is definitely a good language to do that.