In part one of this article we discussed technical skills that, for people learning Web Development, could help you stand out from the crowd. The list was curated from discussions with experienced Web Developers across several communities, who felt the aforementioned skills were often neglected.

In part two of this article, we’re going to discuss the soft skills. What are soft skills? Pretty much anything that isn’t a technical skill is considered a soft skill.

So let’s get started.

Learn When/How To Ask Questions

Learning Web Development, like a lot of professions, is an endless journey to obtain knowledge. As someone learning Web Development, you’re inevitably going to have a lot of questions. Let me be clear, this is okay. I’ll go one step further and say it’s expected. With that said, there are right ways to ask questions and wrong ways. If you want to stand out as a Web Developer, it’s important that you learn the right way.

Help Yourself First

Before asking a question, you should learn to help yourself. Very few issues you run into during the beginning of your career are going to be novel. Chances are someone else has run into the exact same issue, found an answer to the problem, and documented the solution on the internet in some form.

Read the documentation, search the error message on Google, check Github for related issues, search Stack Overflow, and any other resource you can think of. If you can’t find the issue, your wording might be wrong and you may need to try some different variations.

RTFM

My Dad used to have a saying he’d tell me when I was learning something new. Read the f*cking manual. Maybe it’s not an overly elegant statement, but it rings very true when it comes to learning Web Development.

Before asking a question, try reading the documentation for the tech that you are working with. If nothing else, this will give you a better understanding of what’s going on and might be able to point you in the right direction.

I have a confession, the majority of times I run into an issue with a library or framework is because I didn’t read the documentation or glossed over the details. This is not specific to new Developers but is a concept that will solve problems before you run into them.

If you want to be a more consistent Web Developer, RTFM.

Show Your Work

Read all the documentation, combed the internet from top to bottom, still can’t figure it out? Now it’s time to ask your question. When asking a question make sure to include:

  • A clear summary of the issue including any error messages, side effects, context, stack traces, or other pertinent details.
  • A screenshot, gif, or video of the problem if it’s visual.
  • All of the approaches you’ve tried already.
  • The related code, if there is any.
  • Any related issues or documentation.

Stack Overflow wrote a good article about asking questions here.

One other thing. If you’ve found the solution to your problem but don’t understand it, make sure you ask for clarification. Remember, those who fail to learn from history are doomed to repeat it.

Learn To Think Like A Customer

We spend a lot of time learning to think like a Web Developer, so this one can be tricky. Being able to think like a Customer can mean the difference between one or two iterations of a feature, versus a dozen. So how do you learn to think like a Customer?

Talk To Them

Customers are the single most valuable resource for your development process. Why? Because they can tell you exactly what they want or at least give you specific details about how they plan to use a product or feature. This is valuable insight that you can use to plan your approach.

If you talk to your Customers often enough, you’ll begin to see the product through the eyes of someone using the product, instead of the eyes of a Developer trying to solve a technical challenge. The two perceptions are very different.

Get Early Feedback

When you’re working on something that directly relates to a Customer, try to get feedback as early as possible. After developing a rough idea of how something should work, I often like to create a gif of it working and send it to my clients for some quick feed back.

I can’t tell you how many times I’ve started coding, provided the client with a rough draft of the feature, and received feedback that prevented me from spending hours more on a feature that the client ultimately didn’t like. Do this enough and you’ll start to know what the Customer is going to say before the say it.

One thing to keep in mind. Be weary of showing a Customer something that is mid-development and subsequently broken. Sometimes Customers can’t see past your rough draft choices and it skews their perception.

Learn To Understand Why It Was Done That Way

This one is pretty straightforward. When you’re out there in the wild, there are times when you’ll find yourself staring down the barrel of some really gnarly code. When this happens, take the time to try and figure out why it was done that way. Most Developers want to write clean readable code, but the reality is that sometimes we are forced to write garbage.

Why? Because at the end of the day programming is usually used to solve business problems and business problems are often a mess. So take the time to understand why something was done the way it was and don’t assume you know better.

Nothing is worse than “refactoring” a block of code, only to find out you introduced a bunch of new bugs that the original code walked around carefully.

Learn To Properly Test

Yes, this means learn to write unit tests properly. However, it also means that you need to try your code before you push it out. Just wrote a new API end point? Don’t just get your unit tests passing and ship it. Test the end point in real world scenarios. Test it while thinking like a customer. Made front-end changes? Test it on all the browsers and at different screen sizes.

When your coworkers review your pull requests the only issues they should run into are edge cases. Even with edge cases, if you write good unit tests, you’ll likely catch those as well. Learning to properly test will make your code more consistent. Consistent code will label you a consistent Developer.

Learn To Properly Search

This is probably one of the most important soft skills you can learn when learning Web Development. If you can learn to properly search for answers to your problem, you’ll be close to unstoppable. 99.9% of the time the answer to your problem is out there on the internet, in a Github issue, article, or some obscure community forum. You just need to learn how to find it.

Here are some approaches you can use:

  • A clear summary of the issue including any error messages, side effects, context, stack traces, or other pertinent details.
  • A screenshot, gif, or video of the problem if it’s visual.
  • All of the approaches you’ve tried already.
  • The related code, if there is any.
  • Any related issues or documentation.

There is no formula to follow when learning to properly search for answers to your problem and the best approach is often specific to the type of technology you are working with. More important is that you commit to learning to find the answers on your own.

Don’t Do Things You Don’t Understand

I’m going to keep this one short. There are times when you are going to feel tempted to copy and paste code into your project without understanding how that code works. Don’t do this.

Either take the time to learn how it works, or don’t use it. This doesn’t mean you need to understand the inner workings of every plugin, package, or module before using them. It does mean that you should read the documentation for those tools before using them.

The Tip Of The Iceberg

There was an unreal amount of soft skills mentioned across all of the communities and unfortunately I can’t write about every single one in detail. Here is a list of some that I missed:

  • A clear summary of the issue including any error messages, side effects, context, stack traces, or other pertinent details.
  • A screenshot, gif, or video of the problem if it’s visual.
  • All of the approaches you’ve tried already.
  • The related code, if there is any.
  • Any related issues or documentation.

Thank you to everyone who was involved in the initial discussions. There were a lot of great suggestions and a lot valuable insight. For those learning Web Development, I hope these articles have provided you some value.

Good luck and happy learning.

Originally published by Colin Morgan at https://dev.to

Learn More

☞ The Web Developer Bootcamp

☞ Angular 7 (formerly Angular 2) - The Complete Guide

☞ Learn and Understand AngularJS

☞ The Complete JavaScript Course: Build a Real-World Project

☞ Become a JavaScript developer - Learn (React, Node,Angular)

☞ Build Responsive Real World Websites with HTML5 and CSS3

☞ Web Design for Beginners: Real World Coding in HTML & CSS

☞ React 16 - The Complete Guide (incl. React Router 4 & Redux)

☞ The Complete Node.js Developer Course (2nd Edition)

☞ MERN Stack Front To Back: Full Stack React, Redux & Node.js

#web-development

2 Likes13.30 GEEK