How to start getting the Python career of your dreams today
This month we're breaking down exactly what it takes to become a Python pro
Hey Grokking Python readers!
We're dedicating three issues this month to one vital topic – the steps you need to take to become a fully fledged Python developer.
Here at Educative, we provide proven resources for developers, by developers. To help our Python learners get the most out of our platform and reach their goals, we've decided to augment these resources with a step-by-step career guide.
If you aren't sure what career path to pursue, don't fret! We'll first break down all the possible paths that rely heavily on Python. If you've been a subscriber for a while, you may already be aware of some of the use cases of Python. If you're brand new to Grokking Python, welcome, and there's no need to feel behind. We'll explain what each field does and how Python plays a part.
Afterward, we'll tell you how to begin your journey. This issue will outline precisely how to:
Create a career plan
Get an education
Gain real-world experience
We'll close out each step with an estimated time requirement.
What Python specialization is right for you?
Python is officially being used more than any other language in the world. It's hard to find a tech domain that isn't extensively using Python in some regard.
As a result, there are tons of different potential fields for a Python developer, and the one you intend to specialize in will more closely inform your own process. Some of the potential paths of a Python developer and related Python resources include:
Data scientist: Use programming languages and coding skills to collect, analyze, and visualize large data sets.
Matplotlip, Numpy
Machine learning engineer: Design and implement algorithms and artificial intelligence in concert with a larger data sciences team.
TensorFlow
Software application developer: Responsible for designing, developing, troubleshooting, and updating software applications of all sorts. This is a broad field that encompasses many of the classic computer programmer tasks.
Tkinter
Web app developer: Design, launch, maintain, and update web pages and web applications designed for mobile and desktop.
Django, Flask
Software automation engineer: In this specific information technology (IT) role, optimize existing software systems by automating data-heavy processes.
Selenium
Game developer: Although it's not the most common language for game developers, Python is indeed capable of building 2D and 3D video games.
Panda3D, Pygame
The libraries and frameworks cited here are just a taste of what you might need to learn as an aspiring Python dev. We'll focus on more of these technical skill requirements in our Sept. 22 issue!
A multitude of other fields rely on Python as well. We won't specifically dive deeper into them here, but if you want to research them yourself a few other popular ones are:
Finance: The same features and libraries that make Python excel in data science also make it particularly useful for finance. It can assess trends in large data sets, as well as aid risk management efforts.
Task automation: In addition to serving the IT field, Python can perform many different automations such as: website scraping, report generation, file storage management, and logging.
Data visualization: We touched briefly on Python's ability to map data in our definition of data scientists, but it's one of the main draws to the language in careers that require data manipulation.
Now that you know what some possible career paths are, let's talk about how you can get started down them.
Step 1. Make a career plan
Regardless of your goals or your skill level, you'll need to make a plan. Planning will help you in the long run by preparing you for the time commitment and allowing you to more clearly visualize your individual goals.
Everyone's plan will look a little different, but you can start by asking yourself a few questions:
How do you want to learn Python?
Getting an education is the biggest step in the whole process, and, depending on the path you end up taking, it will require the most investment of time and money. It's true that many jobs don't specifically require a bachelor's degree in computer science, but many employers prefer it. Regardless, there are plenty of other ways to learn Python that can be both valuable to you and meaningful to a potential employer. If you aren't sure what the right option for you is, check out the differences between a coding bootcamp and a computer science degree.
What areas of Python interest you?
As mentioned above, there are tons of different applications when it comes to Python. As you progress through your education and gain experience, you'll get exposure to fields you like and dislike, but it's crucial to consider this beforehand.
If you already have a specialization in mind, that's great, but you should still seek out as many different experiences as possible. You'll be a more well-rounded programmer as a result.
Time estimate: Everyone spends a different amount of time planning their career journey. We recommend taking at least a month to give yourself time to research and process your decisions.
Step 2. Get an education
There are plenty of options to choose from when considering your education. We'll break them down in descending order of time to complete.
Bachelor's degree + Master's degree in CS or related field
Six years total (4 years + 2 years)
➕ Covers a wide range of material and opens the door for specializations and senior roles
➖ Requires the most time and money relative to other options
Bachelor's degree in CS or related field
4 years
➕ Covers a wide range of material, and many employers prefer candidates with a relevant 4-year degree
➖ Still requires a significant amount of time and money
Associate degree + Bachelor’s degree in CS or related field
Four years total (2 years + 2 years)
➕ Often simpler and cheaper than a traditional bachelor's degree while still providing comparable coursework and skills
➖ Requires a significant time investment
College/university certificate
One to two years
➕ Requires significantly less money than other options and focuses on technical skills and job readiness
➖ Doesn't cover as many topics as a longer, more expensive program
Full-time coding bootcamp
12 weeks
➕ Values brevity over breadth, focuses on meaningful technical skills and workplace best practices
➖ Initial job prospects may be limited to more junior roles following your education
Self-study
12 weeks to multiple years
➕ Completely flexible schedule, with unrivaled options for topic coverage
➖ Demands discipline and tenacity and the time to employment is nebulous
Time estimate: Depending on your prior experience and the route you end up pursuing, your education may take anywhere from 12 weeks to six years.
Step 3. Get real-world experience
Employers almost always require some sort of real-world experience. Luckily there are more ways to demonstrate your expertise than just work experience.
If you're a student in some capacity, odds are you'll be able to apply for internships. If you want to gain experience fast, consider:
Signing up for a hackathon
Contributing to open-source projects
Developing your own personal projects
Most degree programs, bootcamps, and even university certificates provide resources that can connect you to networks to help you gain real-world experience. Do your due diligence and research what resources are available to you in your individual situation.
During this step you'll be working on code that will be of interest to employers. Be sure to document your progress and catalog your work in a portfolio. This will make your life easier when it comes time to gather the required materials for a job search.
Continue reading about creating a portfolio, or:
Time estimate: Most internships last around three months. Budget at least this much time when gaining experience in your field of choice.
Stay tuned to learn what comes next…
That's all for this edition of Grokking Python!
Hopefully, we've given you more than enough to get the ball rolling on your own Python developer journey. Set a goal to make a rough draft of a plan in time for the next edition. In a week, we'll dive a bit more into the job search and how to prepare for it.
If you feel inspired to learn more, but find yourself struggling in the thick of it, check out this article on 5 proven learning strategies.
As always, happy learning!