Web Design Blog

Blog

Learn to Code

Tech Jobs – A Breakdown of the Different Categories

You’ve probably heard that tech jobs are in demand but you don’t fully understand what it means to become a software engineer. If you don’t have a computer science degree, you’ll probably become interested in dev bootcamps – maybe even bootcamps that have guaranteed job placement rates 😉 This way, you don’t have to go back to school for four years just to land another job. If you’re driven, determined, and able to learn things quickly, stay tuned. 

As someone who majored in graphic design, I was naturally drawn towards frontend development when I began my journey into code. I thought that if I had a basic understanding of HTML, CSS, and JavaScript, and if I could solve your basic algorithm challenges on Codewars or HackerRank, then I’d be able to land a job as a frontend engineer. And being a frontend engineer meant that I would design what a website looks like – right?

Not quite. That’s why first and foremost, it’s important to understand what the current job market looks like for developers. What jobs are out there?

Frontend Engineer

React Developer

UI / Web Designer

UX Designer

WordPress Developer

UX Researcher

SEO Specialist

There are more than these, of course. But these are the categories that I know about personally. What skillsets do you need to acquire in order to land one of these jobs?

Frontend Engineer

In order to get a job as a Frontend Engineer, it’s going to be most helpful to have a solid understanding of functional programming, object oriented programming, the ins-and-outs of frameworks like ReactAngular, and Vue, and a basic understanding of HTML and CSS. Someone who literally designs the look and feel of a website or who codes the HTML, CSS, and JavaScript (as far as the functionality of interactive elements in the DOM) is not a frontend developer – that’s a User Interface / User Experience designer.

Again, you might think that as a frontend developer, you’ll be writing the code for what you actually see on the front-end of a website. And while that’s partially correct, heavy coding to create the functionality of a website application is mostly what’s going to be required.

Here’s an example. As a frontend engineer, you might write a function fetchUpdateCart that updates the status of a shopping cart based on whether or not a user is logged into an e-commerce application and, of course, whether or not some products get added to their cart. You might create a variable named data within this functionwhich sends an asynchronous HTTP request to a REST API endpoint using Axios. Then, you might pass fetchUpdateCart into a second function called Cart, which tells the user whether or not their cart is empty based on the data that gets fetched from the fetchUpdateCart function. You might render some HTML within the Cart function, which displays Unit Price, Quantity, and Item Total – dynamic numbers that are based on the ID of the product that’s been selected. Passing data from one function to another like this is called functional programming – and it’s what’s going to make up much of your role as a frontend developer.

Another example might be creating a function loginWithGoogle that allows a user to log into your React-Native application via OAuth2 authentication – or by using their Google account. This function might use try-catch logic to determine whether or not a user has a legitimate Google account. If they do, navigate the user to the Home page of the application. And if not, the function should catch the error and alert it to the console using JSON.

These are the types of things that demonstrate an ability to create functionality for the elements that you interact with in a website application. They don’t, however, have much to do with determining the styles, organization, or flow of the things that you interact with on a website application – because those are the responsibilities of a UX Web Designer.

Additionally, as you may have noticed from the previous examples, you don’t necessarily have to have extensive knowledge of the ins-and-outs of a database (like a backend developer would), but you will at least need to have a general understanding of how the frontend interacts with it – how to get data from a database and display dynamic information within a component or element on the screen. The line between frontend and backend here seems to get increasingly blurry.

If these things seem interesting to you and if you think that you can learn them quickly then frontend development is for you.

Frontend Engineer Salary

React Developer

React Developer will need to have extensive knowledge of how to do all of the things that a frontend developer does within the context of the React framework. In an interview, employers will most likely ask you about the things that make React, React.

For example, some of the concepts that are typical or are related to React (in no particular order) include:

Redux

Thunks

Actions

Routers

Components

The Reducer

The Store

The Provider

Props

State

Destructuring

Etc.

There are also some React / Redux-specific functions that you should know like the back of your hand, such as:

mapStateToProps()

mapDispatchToProps()

componentDidMount()

componentDidUpdate()

useState()

useEffect()

Etc.

And finally, you’ll also want to have an understanding of some related software, which allows you to navigate a React App, install essential packages, and create a RESTful API:

Node

NPM

Yarn

Travis

Babel

GIT

Webpack

Express

MongoDB

Sequelize

Postgres

Etc.

React is a very popular framework and is often considered the easiest to learn between the three most popular frameworks – React, Angular, and Vue. Employers most likely will want you to have 2 – 3 years of hands-on experience with React in order to secure an entry-level position as a React developer. Every Frontend Developer, Backend Developer, Fullstack Engineer, or UX Web Designer most likely needs to have a basic understanding of React.

A React developer also needs to know how to set up a database and interact with it on a regular basis. Therefore, a React developer will likely need to be a full stack engineer, unless otherwise stated in the job description.

React Developer Salary

UI / Web Designer

A UI / Web Designer designs the look, feel, and experience of a website. When interviewing for a Web Designer role, you’re most likely going to get asked about accessibility and WCAG compliance. Accessibility is a huge part of UX. Making a site that’s user-friendly for everyone is important not only because it’s kind / decent, but also because it helps you avoid getting sued. Because of the Americans with Disabilities Act (ADA), you can get sued if your site is not fully accessible for the blind or for people with disabilities. This means that checking for color contrast, placing Aria-labels in your HTML, providing alt-text, ensuring website responsiveness and cross-browser compatibility, are all important factors when it comes to creating an accessible website.

A website designer is also going to want to have a design portfolio of graphics, logos, interfaces, etc. Part of your job as a Website Designer will involve creating proposals or ‘mockups’ that need to get approved by product managers or engineers. This is why UX Web Design may naturally lend itself to someone with a graphic design background. However, a UX Web Designer is typically more focused on the web than on the design process. This type of role might be 60% development and 40% design, at least in my experience.

As a UX Web Designer, you’re mostly responsible for designing and developing the flow of a website application. You’re making decisions that are most beneficial for an optimized user-experience. Does it make more sense to have a message about accepting cookies in the header or in the footer? Should a product image be ‘sticky’ when you’re scrolling down the page, so that the user always knows what they’ve selected, or should the product image be fixed, maybe with details about what product they’ve selected showing up in the cart instead? It’s the job of the UX Web Designer to make these sorts of decisions and to code them into existence on a regular basis. A solid understanding of HTML, CSS, JavaScript / jQuery and maybe SASS will be required for UX Web Design.

UX Web Designer Salary

UX Designer

There is a difference between a UI / Web Designer and a UX Designer. A UI Designer’s role is mostly focused on designing software. Their design process involves creating various mockups, typically using Sketch or the Adobe Creative suite, and maybe exporting their designs into Zeplin for review by the product managers or engineers.

A UX Designer knows that interactive prototypes are valuable for demonstrating the flow of your design to product managers or stakeholders. You might create a prototype entirely in SketchAdobe XD, or Figma. And while there are methods for turning your design into a prototype directly from one of these design tools, the sustainability of this kind of prototype isn’t very good. Broken links, poor semantics, and bad naming conventions typically occur after exporting your design straight from Figma into React. 

Like a UI / Web Designer, you’re going to want a design portfolio to show employers, and you’ll most likely want a graphic design degree or equivalent work experience before applying.

UX Designer Salary

UX Researcher

It’s amazing but there’s a subdivision of UX that’s only responsible for research. Honestly, if you don’t have any experience as a UX Designer or UX Web Designer first, then I don’t know how you’d be able to get this type of job. A UX Researcher is responsible for researching how users interact with applications. What interactions do they like? What interactions do they not like? Does the flow and overall experience make sense to them?

At this point, the full extent of my UX research involves getting feedback on the Elevate app that I designed for Riverside Insights and also getting feedback from clients about what they’ve liked or disliked about my freelance projects. I also have experience conducting experiments with Google Optimize and researching industry-leading-trends through Baymard Institute.

Of course, it’s only my opinion that you won’t be able to get a UX researcher role unless you have UX Design experience first. This article by UC Berkeley claims that it’s possible, for example.

WordPress Developer

What does it take to become a WordPress developer? You’ve probably heard of WordPress as a popular blogging platform or maybe even have some experience using a drag-and-drop interface such as AvadaDivi, or Elementor in order to build a custom WordPress website. But does that actually make you a WordPress developer?

If you’ve built one (or several) custom, responsive WordPress themes from scratch and you’ve integrated plugins like WooCommerceYoastContact Form 7, and WordFence, does this make you good enough to get a full-time job as a WordPress developer?

Similar to React Development, you’re most likely going to want to have the skills of a frontend engineer first before converting those skills over to WordPress. Because if you’ve not developed an application before, working with foreign PHP functions and hooks can seem intimidating. But after creating a rest api with node.jsexpress js, and mongodb, for example, developing a WordPress theme won’t seem that difficult.

WordPress provides good documentation just like other popular APIs. Being able to look things up / being resourceful is a skill in itself. However, there are also several popular WordPress functions that you’ll want to know like the back of your hand:

wp_enqueue_styles

 wp_enqueue_scripts

the_permalink

the_title

is_active_sidebar

is_front_page

Etc.

You’re also going to want have a full understanding of the WordPress core and the WordPress loop. Many employers also ask if ever developed your own plugins and if you have experience with Advanced Custom Fields.

In addition, I often see or have been asked about things that apply to the jobs mentioned above such as experience with React, experience with accessibility and cross-browser compatibility, SEO, and Github. Some employers also seem to value your design skills even if the job is advertised as a developer role.

Like with anything else, employers want to see tangible examples of the things that you’ve built. Showing all of the themes, plugins, and WordPress projects that you’ve built or designed will help you get your foot in the door.

WordPress Developer Salary

SEO Specialist

I first acquired SEO experience by using the Yoast SEO plugin while developing WordPress themes. I used Google Search Console to track clicks and impressions for a website, and used GTMetrix to improve website speed. I found that if I improved a website’s speed + followed Yoast’s guidelines for SEO and Readability, then I’d usually see improvements in clicks and impressions over time. I was able to take several client websites to the front page of Google search results (SERP) for target keywords. But there was a lot more for me to learn about SEO, which I wasn’t aware of.

I’ve talked about SEO in a previous Blog postso I won’t go into great detail describing the process that I use to generating more clicks and impressions for a website. There are lots of different factors that contribute to the Search Algorithm on Google, which consistently changes and updates. But I’ve found that in almost all of the interviews I’ve had for the various jobs in tech, SEO is typically something that comes up. So it’s worth knowing about even if you’re not going to apply for a job as a Specialist.

Like with many of these jobs in a post-covid era, an SEO Specialist can work remotely and even set much of their own schedule if they want to. Also, depending on where you work, you can earn a living similar to the other jobs in tech that are mentioned above.

SEO Specialist Salary

Summary

While having a wide variety of skills is not a bad thing, in my opinion, it’s better to specialize. If you specialize in one of these categories, you’ll be able to avoid wasting time, energy, and effort trying to learn something you don’t like. 

Also consider – it’s better to get on a freelance website or a job board in order to seek out new work, because people are actually looking to hire freelancers on these platforms. 

Good luck as you begin your journey into tech 🍀

Leave a Reply

Your email address will not be published. Required fields are marked *