DEV Community

Cover image for How To Find A Job With Soft Skills When Coding Skills Are Weak IV
6

How To Find A Job With Soft Skills When Coding Skills Are Weak IV

On Tuesday December 20th, 2022, I held a talk about How to get a job as a developer with soft skills when tech skills are weak.

It was for the last episode this year on The Monthly Dev event hosted by daily.dev.

Skill combination 1: Project Management combined with Time Management Skills, Problem-Solving Skills and Critical Thinking

If you use GitHub to its fullest, you can dive pretty deep into project management.

Even if you won't be using project management skills yourself as a developer, you will most likely be exposed to it. So it's beneficial to learn about it before you even start your first job.

Combine hard skills like project management with soft skills like time management.

Project Management

Create a project for all your repositories in the GitHub project area. You can add different views like Kanban or a list view.

GitHub projects withing your repository. For each repo there is a tab to create a project out from your repo.

The Kanban view is probably the best known, as it resembles a simple task list: you have open tasks, tasks you are currently working on, and finished tasks.

GitHub projects showing the possibility to add different views of your project, like Table view or Kanban view.

Add problem-solving skills and critical thinking

Create issues (also called tickets, user stories,...) in chronological order.

A list of labels to categorize your created issues predefined by GitHub.

Think about what needs to be built first to achieve a certain functionality in your project? Which functionality is dependent on another? How do you categorize it? Is it necessary for the app to work? So you could label is as a feature. Is it a "nice to have?" Then maybe categorize it as an enhancement.

As projects get bigger, it's natural for issues to arise or for you to change your mind about a particular decision you made at the time. So bugs or defects issues can come up, and can be categorized accordingly.

Time Management

To measure your progress you can apply agile methods like Scrum. You should take time to think about the process of achieving a finished project by setting concrete goals (called sprint planning).

Questions you should ask yourself: How many of the topics you created (called a backlog in Scrum) do you want to have completed after, let's say, two weeks? This time frame would be called a sprint.

And after the two weeks, you should sit down and do a sprint review, which is nothing more than a recap of the last two weeks where you evaluate what you accomplished and if you didn't get it all done, find the reasons that kept you from completing the sprint to improve planning for the next two weeks.

Scrum Term/Event Definition
Scrum Agile Methodology Framework
Sprint planning Set goals/next steps
Backlog All issues created so far for the project (will be updated during the development process until the project is finished)
Sprint How long you work on the next few issues
Sprint Review What have you achieved during the sprint, what can you do better the next sprint?

You can use Github's Milestones feature for this planning.

Estimate time for each issue

To make time estimation even more precise, you should provide time estimates for each issue. There are different ways to do this, and each company handles this differently.

Some options would be to divide it into easy, medium, hard, which can mean different things, e.g. easy means a day, hard means a week; or a certain number of hours, or a time frame like half a day, 2 days, or using points, e.g. 5 points means 3 days and so on.

It's entirely up to you, but be able to explain your thoughts on it.

I was really, really bad at estimating time for my Issues back then. If I said half a day, it often took 2-3 days πŸ₯².

If this is also the case for you, don't worry. You will get better with time, thinking about possible obstacles ahead of time, and become aware of your own pace; it will come naturally.

Use you newfound knowledge to your advantage

Later, you can use this newfound knowledge when asked about your weaknesses. You can say that you lacked time management, but that you found a way, a solution, to get better at it over time and it is no longer a weakness.

This also shows awareness and accountability, two other important soft skills.

Good time management helps you meet deadlines which is important especially to recruiters and clients who care about punctuality and meeting deadlines.

Skills covered and terms used

Just setting up a project in GitHub already covers so many skills that you can talk about them a lot during the interview.

Keywords: Project management, Agile Methodologies like Kanban and Scrum (Backlog, Sprint, Sprint Planning, Sprint Review), Time Management, GitHub, Critical Thinking, Problem Solving; that’s quite a lot.

The good thing is that you don't need a team to set up your project this way. I did the entire project setup for all my 3 projects that I added to my portfolio at the time.

It was important for me to learn these concepts and get a good understanding of what was going on. It helped me improve my time management, a weakness I can now talk about confidently in an interview because I learned how to deal with it over the weeks, and get better at it.


Stay tuned for the next part.

Image of Timescale

πŸš€ pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applicationsβ€”without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more β†’

Top comments (0)

Sentry image

See why 4M developers consider Sentry, β€œnot bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

πŸ‘‹ Kindness is contagious

Discover a treasure trove of wisdom within this insightful piece, highly respected in the nurturing DEV Community enviroment. Developers, whether novice or expert, are encouraged to participate and add to our shared knowledge basin.

A simple "thank you" can illuminate someone's day. Express your appreciation in the comments section!

On DEV, sharing ideas smoothens our journey and strengthens our community ties. Learn something useful? Offering a quick thanks to the author is deeply appreciated.

Okay