Exploring Web Development Career Paths - Getting a Job in Web Development - Getting a Web Development Job For Dummies (2015)

Getting a Web Development Job For Dummies (2015)

Part I. Getting a Job in Web Development

Chapter 2. Exploring Web Development Career Paths

In This Chapter

arrow Discovering how the web developer role has splintered

arrow Exploring front-end jobs

arrow Getting to know other contributors

arrow Understanding why Photoshop is (still) key to web development

There are almost as many ways into web development as there are people with web development jobs. However, there are a few common elements among different “tribes” in web development that provide a kind of ladder for working your way into a career, and then making your way in the web development world.

An initial screen is what “bucket” of related areas your talents and interests fall into. If your skill is in making things look good, you are somewhere in the artistic and graphics areas. The key job title here is visual designer. In this chapter, we explain the difference, and more.

Distinguishing between Visual Designer and Web Developer

Web development jobs are thought of as technical, but the “looking good” area is really at the core of web development versus other career paths. The key job title here is visual designer, although people doing this work can be called graphic designers, web designers, and other titles as well. (The old, very broad term webmaster is still used sometimes.)

The first priority for a visual designer is creating a look and feel to the site. To do this, the designer uses a pretty standard toolkit — either tools from the Adobe suite, including Photoshop, Illustrator, and Designer, or alternatives such as GIMP for graphics. The designer will have a good understanding of color theory and how color works across digital platforms, as well as in print and other static media.

The initial goal for getting a website design approved is that a CEO, managing director, company president, marketing director, startup founder, or other leader likes the look and feels comfortable cruising around the site. These people typically weigh in at two stages in a project — and they are part of the first reason why these jobs are so difficult.

That’s because the visual designer — and, with that person, the entire web development team — are at the mercy of the gut feel of people in upper management who often aren’t that knowledgeable about any aspect of the project: what its goals are, who’s working on it, how much effort has already occurred, how much more work has to be done in so little time, and so on.

They often are also lacking knowledge in branding, visual design (what’s possible visually on the web), technical standards (what’s possible technically on the web), or the needs of the user base. Yes, it’s common enough that a key decision-maker has some part of the relevant skill set and knowledge base; it’s rare indeed that they have most or all of it.

Yet senior managers have to approve website designs based on scanty information. They are being asked to make an important decision, perhaps even a bet-the-company decision in some cases, on their gut. So a gut check, rather than an informed decision, is what you’re likely to get.

And, you’re likely to go through two approval cycles: once near the beginning of the project, when you need a signature or verbal approval to get the project going; and once near the end, when you’re looking for a sign-off for launch. This can be an anxiety-producing process, with lots of tweaks, or even a significant reset in the project.

In addition to a desire to make things look good, and nerves of steel, the visual designer also needs good technical skills. That’s because website publishing demands that things look good, while making it very hard to actually carry that off consistently across different devices, screen sizes, and browsers.

Every visual designer needs to understand the technical barriers well enough to optimize his or her design work for what’s actually possible. The best visual designers understand the technology well enough to actually implement the design, or lead the implementation of the design, themselves.

This is the hottest ticket in web development — the single individual who has mastered visual design and enough coding skills to carry the whole project forward alone, or to lead a project as the highly skilled professional at the top of two complementary teams.

The second major bucket after artistic/graphical skills for web designers is, of course, technical skills. This is the ability to work in various kinds of coding languages to Get. Things. Done. The main languages used are HyperText Markup Language (HTML), Cascading Style Sheets (CSS), and JavaScript.

tip.eps A web designer who combines visual design skills with enough technical skills to implement his own designs is currently the hot ticket in the whole web development area and should be for a long time to come.

warning.eps A web designer who knows about graphical appearances, but knows little about the technology, is likely to have a career that’s frustrating, for all concerned, and possibly quite limited.

technicalstuff.eps HTML is a markup language; commands such as <b> and </b>, to indicate the beginning and end of bolding, are inserted into normal text. CSS is a standard way of describing how a web page will be laid out. A general style sheet can set out the look and feel of an entire website, whereas more specific style sheets “cascade” from the more general ones to control the specific appearance details for specific pages. JavaScript is a sort of programming language called a scripting language because it’s easy to write and because scripts are re-interpreted each time they’re used. This is a slow but flexible way to write code.

These three coding standards (they aren’t quite programming languages) are the core of the ability to make websites look great and appear to a typical user as easy to use. They also help you get desired results from a web page, such as visits to a particular page, signups for an event, sales of a product, or views of a video. In addition to being the major secondary skills for most visual designers, this is also the core skill set of most web developers who are expressly technical.

Getting to Know Front-End Roles

In addition to these “front-facing” technical capabilities, which affect things that users see and click or tap, there are back-end software development jobs as well. These typically use languages such as Python and SQL to manage the interface between users visiting a website and one or more databases which are accessed for content, and updated with user-generated information as a result.

Finally, there are many additional categories, including

· Content developers, responsible for creating words, images, and multimedia.

· Usability professionals, who make sure that users are able to accomplish the things they — and you — want to accomplish.

· Interaction designers, who also work in usability, but have a more precise focus on how the user works with the site even than usability people.

· Data scientists, who manage the large databases that are often the product of web interactions.

· Traditional software developers, whose work is increasingly caught up in web and app development.

Each of these categories is discussed in some detail in this chapter. Study the categories carefully to see where you might best fit in.


The prevalence of Photoshop skills in web development jobs

The often-frustrating search for approvals, go-aheads, budget sign-offs, and related “green lights” regarding the look, feel, and functionality of a site is the reason Photoshop skills have such a disproportionate role in web development. With Photoshop skills, designers can not only make a prototype that looks as good as the final site is going to look; they can make a prototype that looks better than the final site is going to look. It’s common to see shades of color, fonts, and finely tuned layouts in a prototype that will never actually appear on a real website, at least for the vast majority of users.

Not only can a Photoshop-skilled designer create these Potemkin websites, but they can make new versions of them in a hurry. (A “Potemkin website” is a reference to a “Potemkin village.” When Russian empress Catherine the Great toured a Russian region by boat in the 1700s, a government minister named Potemkin had attractive false fronts placed on huts an shacks along the riverfront. The empress approved heartily of what she was seeing.) More red in the design? More white space? Bigger headers, more figures, smaller body text? No problem.

The sign-off gate is frustrating, when you can’t get a needed go-ahead for your project, but just part of the way the game is played. One common result is that executive input to a prototype is often made and accepted, even though it makes no difference in the actual final website that most people see. Websites are commonly very limited in the number of fonts they can display, for instance. (In certain viewing modes on a smartphone, the number of fonts available is approximately “one.”) But that doesn’t stop sophisticated font combinations from getting sold to executives for approval, even if they can’t be reliably implemented online. Don’t laugh — you’ll probably do it too someday, if you have to.


The maestro: The visual designer

The lead role in web development is the role of visual designer. A visual designer has overall responsibility for the look, feel, and functionality of the website.

The reason for this somewhat of an historical accident. An organization’s website is often the most important presentation of that organization to the world, and the idea that website creation usually needs to be led by someone with a graphics and artistic background — rather than, say, a technical person, a marketing manager, a general businessperson, or even a lawyer — is controversial, with good reason.

For many organizations, the stakes are even higher because their websites generate, or support, part or all of their revenues and profits. Website storefronts are substantial cash generators for many companies, the main customer service and support location for others, and the whole ball of wax for quite a few — handling all aspects of customer interaction. In these cases, there’s even more reason for having the web effort led by a general business manager of some sort. Still, the justification for having a strong design background before you take on top web development jobs is quite strong.

Visual designers almost always have some formal education in art and design, and often have broad, interesting backgrounds, including work as painters, sculptors, filmmakers, print designers, or artists who work in advertising. Web design is very friendly to people who have a strong academic background and strong real-world experience outside the web world.

Even the most artistic visual designer, though, is going to be expected to know her stuff technically — what is and isn’t possible online; how different devices display page layouts, content, and multimedia; and how to work productively with people who put their technical hat before their designer hat, or who don’t wear a designer hat at all.

At best, the visual designer is himself a technical person; he can mock up a great design in Photoshop, tweak it until the budget holders involved are happy, and then implement a working site in a matter of weeks or, for large sites, a few months.

Check the next job area description, front-end developer, for a list of skills that any talented visual designer would be well served to master, or at least become competent in, alongside design.

Some visual designers go the other way, though. They leave the technical implementation completely to others and take on a range of projects beyond the website. A visual designer’s work can grow to include apps, print, signs, shirts, and marketing stuff. In that case, the visual designer might be referred to simply as a designer.


Art directors create beauty

Making things beautiful might seem a high bar to set for a website, which has so many technical challenges to meet before it even works well for most users. But some organizations really try to maximize the attractiveness of everything they put in front of people, and such organizations are likely to have one or more art directors as part of the web development team, and possibly in other areas as well. (Another term for art director is “design director.”)

Art directors can really focus on the look of a site and the impression it leaves on people. They can help enforce visual consistency — and, yes, beauty — across a mind-bogglingly wide variety of digital and “meat space” media. (Meat space is a term that’s been popularized in science fiction to refer to the non-online world.)

Art directors are likely to also be responsible for a company’s bank of creative assets. As a simple example, an art director will try to ensure that a company has a high-resolution, printable version of any image it uses. That way, campaigns that start online — where low-resolution, compressed images are the norm — can easily move to print, billboards, and other media, where very high-resolution images are a must.


You will know that you’re a potential visual designer if you have an arts background, love making things look great, care deeply about making them work well, and have a strong technical bent.

remember.eps The visual designer is not quite the same as a web designer. Web designer is a broader term that can include all the job descriptions here, and others besides. A visual designer’s job description is somewhat narrower and states clearly that the title holder has strong graphic design and even artistic skills.

Front-of-house manager: The front-end developer

A front-end developer is the logical complement to a visual designer. (When people use the broader term web designer, they are usually looking for someone who can do most of the work in both categories.) A front-end developer can take a visual developer’s Photoshop mock-up of a web page and make it appear onscreen as part of a website.

There are three terms that you need to know really well for any kind of web development work, plus one that is nearly as vital in many organizations, which will be part of the meat and potatoes of your daily work if you become a front-end developer:

· HTML: HyperText Markup Language (HTML) is a strange coding standard that adds descriptive information about how to display things right into a stream of text. The invention and refinement of HTML, beginning in 1989 with the description of the coding standard by Tim Berners-Lee, were the basis for the launch and rapid growth of the web. (Clickable hyperlinks and the capability to easily put images onto the same page with text were key reasons for the insanely fast growth of the web.)

· CSS: Cascading Style Sheets (CSS) are an even stranger coding standard that manage the look and, to some extent, the interaction — the feel — of a website. A general, high-level style sheet might apply to an entire website, whereas a lower-level one adds to and overrides the general style sheet for specific web pages and groups of web pages. (That’s where “cascading” comes from.) The ten or so years when CSS was being developed and implemented, unevenly, across web browsers, beginning in the late 1990s, were probably the most painful years to be a web designer, but also pretty lucrative ones as well. Many web designers swear by CSS, whereas others — including everyone who has to learn CSS for the first time — swear at it.

· JavaScript: JavaScript is a scripting language – that is, a programmer’s tool that is only interpreted into the computer’s language when the JavaScript code is executed. Its informality, lack of structure, and ease of use — including the ease of making mistakes — differentiate JavaScript from a “real” programming language. JavaScript is used to do things like create a pull-down menu, and it can also do a lot of the things CSS is used for. JavaScript was inconsistent during roughly the same decade that CSS was, but it too has settled down, and now occupies a proud place in most web developers’ toolkits.

· Python: Python is another interpreted language, like JavaScript, but Python’s greater structure and formality mean that it’s considered a “real” programming language. Python is good for many things, but especially for writing code to interface to databases on the fly. Because most professionally developed sites today are database-driven, Python is often just as important as JavaScript in a web developer’s toolkit.

Web designers used to be able to make a very good living indeed by being expert in the various versions of HTML, CSS, JavaScript, and mainstream Windows and Macintosh web browsers as standards grew steadily more capable and complex and as browsers grew ever more capable — and, for a while, inconsistent. Browsers are much more standardized today; now the challenge of making websites work across personal computer browsers is less, but the rise of smartphones and tablets, which mostly have smaller screens than personal computers, has replaced the old standards challenge with new challenges driven by the proliferation of different devices.

If you specialize in front-end development, you might come to be referred to as a front-end engineer. You could also become a JavaScript developer or JavaScript engineer. You could become known for your expertise in creating and managing libraries of CSS style sheets as well. The room for growth and development is endless.

What distinguishes front-end developers from traditional software developers can include an interest in working with people and not just computers; fascination with the web and its possibilities; and really, really, really liking rapid change — change in the technologies in use, change in projects, change in employers, and often all three at once.

Front-end developers usually study software development in school, but they can also be musicians, artists, writers, scientists, or come from almost any background. Demand for these skills is so high that those who have the right mindset and are willing to apply themselves can quickly find themselves working right alongside people with CS (computer science) degrees from prestigious universities.

Making things feel right: Usability professionals

Usability people make sure that websites work to specification, and then they try to improve the design to make it easy, obvious — almost inescapable — to go deeper and deeper into a website, until you buy something, download a white paper, watch a cat video, or whatever the site’s developers want you to do. They tend to work using web design tools such as the Dreamweaver suite, although they will often know a smattering or more of the technologies described previously.

Usability people come from a wide variety of backgrounds. We’ve known teachers, writers, and actors who have moved into usability work successfully. Many usability people work as consultants because their skills are most needed at certain key points in a project.


The importance (and pitfalls) of user testing

The results of watching someone try to buy something, for instance, on an early version of a site can be hilarious if painful for the developers. It can be more painful than hilarious, though, in the non-digital world.

A large computer company once called in users to try upgrading the memory inside a personal computer. One test subject opened the computer case, reached into the innards, and cut her hand on a piece of sharp metal. The minor cut made her hand bleed all over the motherboard. The developers watched in horror as the woman, crying, started to apologize for ruining the computer, while she continued to try to add memory onto the motherboard. They stopped the test immediately, and then redesigned the computer’s innards to prevent injury to users.


Usability-related titles include

· User interface designer (UI designer): This role is often similar to the role of the visual designer, although with less need for a design or artistic background. UI designers will go through a site with a fine-tooth comb, finding and fixing problems, and then have naïve users come in and try the site to unearth more problems yet.

· User experience designer (UX designer): A user experience designer focuses on what it’s like for the users as they work their way around a site, trying to get tasks accomplished. UX designers are somewhat like psychologists, asking users, “How do you feel about this?” A UX designer is a very valuable role to have on a web development team, even if she’s only brought in as a consultant at key points in a project.

· Interaction designer: An interaction designer focuses very specifically on what users read and where they click as they try to accomplish specific tasks. An interaction designer will help you place the Buy button on your selling page so it will get more clicks, and help you get the size, shape, color, and font on the button right as well.

remember.eps Bringing in inexperienced users to try your site is called user testing.

Making things work right: The web developer

The term web developer can mean two things: any professional on a web development team, including the graphics-oriented and usability people; or only the more technically based people. In this section, we use the more technically oriented definition.

A web developer is a full-time software developer who usually works in web-friendly programming languages such as Python, Ruby, PHP, and so on. A web developer will usually be good with JavaScript, good at database work, and be able to get tasks done in HTML and CSS.

The web developer doesn’t need to have any artistic or design background, although of course every web professional will do well to understand the outlines of, and have respect for, every role in the overall effort.

Many web development roles are extremely demanding. On a big web development project, all the pieces are moving at once, and a web developer has to do useful work that can adapt to changes in the front end, the back end, the project goals, and anything else you can imagine. This extends to the sudden cancellation of website features or entire projects — and just as suddenly reviving them months or years later.

The web developer title is a big umbrella that can include front-end developers and back-end developers. Used properly, it really refers to the middle and toward the back end of a project. Web developers definitely need to know what’s going on within the user-facing website project, but their role is to work with the front-end developers to receive and send information from databases and other organizational resources. They aren’t likely to directly concern themselves with the user interface, for instance.

Web developers who aren’t front-end specialists tend to be a bit less concerned with the user’s experience and more concerned with traditional CS concerns like security and structure. A good web developer will make the lives of back-end developers pretty easy.

We are not treating back-end developers as “web developers” for the purpose of this book. Back-end developers spend their time in traditional programming languages like C or C++ and doing database programming in languages like SQL. These developers often work on web-related projects, but their work is informed by, rather than determined by, the needs of any one web development project.

Contributors beyond the Front End

Front-end roles are focused on the look and feel that the user encounters. There are additional roles that are not back-end jobs (the site’s underpinnings and technical interaction with websites), but that are somewhat separate from the front end’s focus on what exactly a user sees and interacts with.

Prepping each piece: Content professionals

Given that one of us (Bud Smith) is a professional web content developer, let us say right here and now that this is one of the most underrated and misunderstood roles in web development or, really, any sphere of human endeavor, ever. Content professionals provide the words, images, and multimedia assets that people visit a website to experience in the first place.

Writing for the web is different than any other kind of writing. People who are reading online — which is “like staring into a light bulb,” as some have described it — get tired more easily and are able to give less attention to detail than traditional print readers.

So fewer, more powerful, more action-oriented words are needed to get the point across quickly and move on. Bulleted lists and lots of headers give variety to the flow of text and help the reader find key facts and key points.

Images and multimedia for online are specialty areas as well. (Or, perhaps, they should be, as a lot of not-very-suitable stuff gets put up online.) Web video is, in its own right, a whole new area of human endeavor, and one that’s attracting a lot of talent — including Hollywood writers, producers, and stars — to try their hand in a new medium.

Most web content professionals have backgrounds in a given area before the web. Web writers are well-suited to this work if their previous background includes advertising or marketing writing and a strong technical grounding, which is a rare combination indeed. Writers tend to have some formal education in writing, either as the focus of their bachelor’s degree, or from a related area such as history.

Content written for the web usually goes into a content management system (CMS), where it can be edited, moved around, displayed, tallied, reused, and ultimately disposed of. There are several major CMSs, such as Drupal, Joomla!, and CushyCMS (we aren’t kidding). Each has its own advocates and fans. Writers sometimes move into more or less technical roles as CMS experts.

remember.eps WordPress is a quick and easy to use website development tool with a built-in CMS. You can’t use WordPress strictly as a CMS — it controls the look and feel as well — but it has more users than any other CMS.

As with artistic assets, writing assets need managing. There is a whole industry around writing small chunks of easy-to-translate, easy-to-reuse content, and then combining the chunks for different purposes. The chunks are also easier to translate and reuse than long blocks of text. There’s specialist work here for writers, content management professionals, translators, and others.

The marketing maven: Product manager

A product manager, like a writer, is an unusual beast. Product managers are marketing managers who are responsible for getting a product — in this case, a website — to market. Like writers, many product managers are former technical professionals who prefer to work in areas where they have, to a certain extent, an outsider’s view of the project.

Product managers can be very strong — mini-CEOs, with budget responsibility and hiring and firing power or influence — or more like internal consultants who suggest, but can’t require, user-friendly and sales-friendly ways of doing things. The skilled product manager can thrive across a wide range of job attributes as well as a wide range of technical challenges.

Although the roles are often confused, a project manager is different than a product manager. Project managers make the trains run on time. They help set the schedule, secure resources, and ensure that milestones are met. Project managers are sometimes also the boss of a project, but they are more often working at the middle level.

An evangelist is a specialized role which includes part of a product manager’s job. An evangelist talks to people outside the project, selling the vision for the site to get people ready for it, and gathering information to help the project team meet customers’ needs better. (Unlike in usability, money talks when an evangelist determines where to spend her time.)

Look for a product manager role if you have a chance to get a strong degree in business or marketing, or if you work in almost any other web development role and have strong business or people skills. If you have that same background, but are more detail-oriented than people-oriented, consider project management. And if you have great people skills, but don’t yet have the business background for product management, try evangelism, brothers and sisters.


The SEO specialist

Some of us have a weak spot for search engine optimization (SEO) specialists. This is one of the most in-demand roles in the web development universe, and rightly so. It’s a tremendously important role, and the people who fulfill it well have special skills indeed.

For most web development professionals, it’s difficult to remember a time before Google, but Google changed the online world at a critical time. Before Google, the best way to find the content you needed was to work toward it through Yahoo!’s carefully curated lists of relevant sites. After Yahoo!, in the Google era, you just type in a couple of keywords off the top of your head, and bam! Usually, there’s the content you need, or close enough to it so as to not make a difference, at the top of Google’s list of search results.

But you want your website to appear at the top of relevant search results lists, and this is where the SEO specialist comes in. The first job of an SEO specialist is, oddly, to make sure your web page shows up exactly where it should. When a user types in your company or organization name, the name of a recent blog post, or the name of an event your company has participated in, you will of course want your organization’s name to appear near the top of search results.

This is part of an SEO specialist’s job, but not the part that gets the most attention. The part that gets the most attention is the job of getting your organization’s website at the top of competitive search engine results for widely used terms like flowers, pizza, and fun.

You will, of course, get huge kudos if your website appears at the top of the list for a generic search for fun, however briefly. But this is of limited value. If you sell Pez candy dispensers, and you appear at the top of a list of search results for fun, how many more Pez candy dispensers will you sell as a result? Whereas appearing at the top of a list for Pez or even Pez San Francisco may well result in big sales increases.

So look for an SEO specialist with business savvy as well as technical skills and, if she does the job well, be ready to replace her when another company hires her away.