avatarYanick Andrade

Summary

An individual shares their journey of creating Python projects to gain employment in the field, emphasizing the importance of practical work and self-promotion when professional experience is lacking.

Abstract

The author recounts the challenges faced while seeking their first Python job during the COVID-19 pandemic, including the need for self-confidence, patience, and support. To compensate for the absence of professional experience, they embarked on several public projects, which included an NLP web app, a GraphQL project with Python, a web app for photovoltaic energy, and writing about Python and programming on Medium. These projects not only served as a means to learn and apply new skills but also as a portfolio to showcase abilities to potential employers. The author provides detailed insights into the tools and libraries used, such as SpaCy, Transformers by Hugging Face, PVLib Python, and Graphene, and reflects on how these projects bolstered their job search efforts.

Opinions

  • The author believes that creating tangible projects is crucial for job seekers without professional experience to demonstrate their skills.
  • They suggest that writing

Projects I Did When I Was Looking For A Python Job

Maybe This can help you out

Photo by laura adai on Unsplash

Not a member yet? Read it for free here

When you’re looking for a job without professional experience, regardless of the field, it is a brutal endeavor. You need to have strong self-confidence, and patience, and be surrounded by people who push you to not give up.

I remember when I was looking for my first Python position here in Europe during COVID-19. It was tough, to say the least.

I was doing sometimes 2 to 3 interviews a day, hoping to find that one company that would believe me despite the lack of professional experience in my CV.

To help me shorten the distance between my lack of professional and personal experience with Python, I decide to create some public projects including writing.

Let me walk through each of them here hoping to help you somehow in your Python projects, maybe finding your next Python job.

NLP web app

I’m including this project here because it was the one that put more effort into it and the one that took me the longest.

Natural Language Processing (NLP), is a branch of Artificial intelligence that focuses on giving the computer the ability to understand and communicate human language.

I decided to create a project using NLP because it is such a broad field and I thought it would make me stand out during interviews when I said I did it.

It was before ChatpGPT, one of the greatest proofs of NLP.

Here are the capabilities of the web app:

  • Sentiment Analysis: Try to predict if a text (i.e. review, comment) is positive or negative
  • Question Answer: Given a large text, try to extract answers by asking questions on top of the text.
  • Summarization: Summarize a text without losing the context.
  • Word Analogy: Find the nearest neighbor word based on a corpus input
  • Text Mining: This consists of extracting information from a text, such as verbs, a person’s name, entities, countries, places, etc.

To be able to create and make everything work properly I used the following tools:

Spacy IO — Industrial-Strength Natural Language Processing

Sapcy is one of the best tools to create NLP projects. Especially if you’re a beginner and want something to get you up and running quickly.

I’ve used it not only in this project but also in my first job as a Python developer to get Named Entities from internal sources:

# Example from https://spacy.io/usage/linguistic-features#named-entities
import spacy

nlp = spacy.load("en_core_web_sm")
doc = nlp("Apple is looking at buying U.K. startup for $1 billion")

for ent in doc.ents:
    print(ent.text, ent.label_)

# Apple, ORG
# U.K., GPE
# $1 billion, Money

It comes with trained models in multiple languages and you can easily train your model using your custom dataset.

Transformers — State-of-the-art Natural Language Processing

Transformers is an SDK provided by Hugging Face where you can find state-of-the-art pre-trained models for different things going from NLP to Computer Vision to Audio and more.

Training a model can be virtually impossible on a regular machine, depending on the job at hand. So using pre-trained models that have been extensively tested by experts can be very handy.

Another great reason to use transformers is that it interoperability between popular Python frameworks like Tensorflow and PyTorch.

GraphQL with Python

I’ve always been a fan of GraphQL.

One API that you can easily use the endpoints in multiple systems like mobile and web applications.

Count me in.

GraphQL is a query language, created by Facebook that gives us the ability to query and ask exactly what we want from our API. You don’t need multiple endpoints to return specific information.

It provides a standard way to:

1. describe data provided by a server in a statically typed Schema

2. request data in a Query that exactly describes your data requirements and

3. receive data in a Response containing only the data you requested.

In this project, I created a Django API and used Graphene, which is a Python library for making GraphQL APIs in Python quickly.

I wrote about this one a few years ago, and you can find more about it here:

Web App for Photovoltaic (PV) Energy

This one was a Freelance project I did with a couple of friends. They needed a small web application that could give them information about PV.

PV, “is the conversion of light into electricity”. They were making a study about CEDEAO regions where they could help benefit from the sunlight to implement a water pumping system by using the converted energy.

For these, they needed to gather information related to:

  • Monthly Irradiation
  • Peak Solar Hours
  • Required Power (to pump water)
  • etc.

So this one was a new and exciting challenge mostly because I knew sh*t about this stuff. Never heard of them.

But that’s what being a programmer means, adapting to new things whether is baking, finance, health, or whatever.

Tools used:

PVLib Python

a community-developed toolbox that provides a set of functions and classes for simulating the performance of photovoltaic energy systems and accomplishing related tasks. — pvlib

Write about Python and programming

One of the main reasons I decided to write on Medium is to have something to show in interviews — “Hey, I write online about Python and stuff”.

When you don’t have professional experience, you have to play with the card you’re dealt. So I had to self-promote and showcase my skills.

So I went on and wrote about Python, GraphQL, MongoDB, NodeJs, and so on.

Everything I found interesting I was writing about it here on Medium.

Final Thoughts

Finding a job without professional experience in our field can be a herculean task for most of us. We have to do everything we can to demonstrate that we have what it takes.

One of the ways to do that is by creating projects that you can use in your favor during interviews and add them to your CV if possible.

For me, these projects helped a lot, not only because they boosted my confidence but because to do them I had to push myself and learn new things.

In Plain English 🚀

Thank you for being a part of the In Plain English community! Before you go:

Python
Programming
Data Science
Machine Learning
Technology
Recommended from ReadMedium