The differences between being a web developer and a software engineer are getting narrower in our experience. While some of the functions of a web developer and a software engineer can be automated by using a good IDE or code generator, both career tracks have their own benefits and pitfalls and aren’t going away. For example, being a web developer puts you at the forefront of a company’s reputation, so your work here puts you at the mercy of the success of the project.
Being a software engineer has its own set of hardships; while HTML5 can almost entirely be generated in a WYSIWYG environment as simple as Microsoft Word or Dreamweaver, almost no good software package can be completely generated visually. Such good IDEs for Java and C++ such as Eclipse still require you to add actions to your neatly generated visual boxes, no matter how much you try to make it a click-through development.
Web Developer Duties: On the Front Lines
A typographical error, a broken link, missing pages and 404 errors all hurt the site’s look and also bring into question the security and integrity. If you are providing the front-end for an authenticated or otherwise proprietary site, think of this: Would you put your credit card information into a site that looked like this, or enter confidential health information? These are the questions that customers may need to trust you with and therefore web developers do have a very precarious role of being on the front line and being the face of the organization.
How to seek out Web Development Training
Should your inner design guru desire a job in web development, there are a wide variety of skills that are absolute necessities for a comprehensive education. While there are plenty of commercials touting website builders that require little to no education, the results are usually anything but the seamless professionally built sites that are touted.
Some recommendations for beginning developers are online websites; for instance, CodeCademy.com is available for free for certain languages including HTML. It provides an in-browser IDE, focuses on certain parts of the scripting at a time, and provides instant feedback. It does not translate directly to another IDE save for a text editor, but it shows you how to use that text editor and not rely solely on the IDE. For the best recommended Training resources on how to get started as a web developer, Visit our Training page.
One of the drawbacks is that it is not a fully comprehensive education, which you can hardly expect from a site that offers free tutorials. There are other sites that offer coding resources that are more comprehensive but a university education with specialization in programming for the Web is going to provide a lot of traction and higher salaries. Continuing education is a must, and to keep fresh there are a lot of sites that provide good education such as free instruction at Team Treehouse or more specific niche coding at Udemy.com where you can find a course on literally any aspect of web design.
Get on Treehouse today to improve your Coding Skills for FREE today!
Get your Free Trial Now!
Software Engineering: In the Rear with the Gear
Web developers are often on the front lines with their interfaces being what the world sees first when they access a web application or website, the software engineer is less seen but has a larger task, which is to provide and maintain everything that operates on the back end.
This is something you’re going to want to get a minimum of a university education for, and keep fresh with new technologies and the ones they have taught you. You’ll want to take programming electives instead of taking the easy way out and taking electives in areas that don’t have anything to do with programming. It takes discipline and focus to sort through the lines of code; also, unlike being a Web developer, there are no tools that remove the developer completely from the aspect of developing the code.
There are IDEs such as Virtual Studio by Microsoft and IDEs such as Eclipse that can remove a lot of the GUI development to a WYSIWYG editor, but you are still responsible for attaching each of those shiny buttons to a piece of code, an actionListener(event ActionEvent) in Eclipse, and so on. There are a lot of tools available to the coder, but most of the true coding gurus within the programmer community have been using gedit and vi/vim on Linux, or Notepad++ and just plain Notepad as well as a few basic IDEs on Windows.
While Web development may be more of a cubicle with pictures kind of job, being a coder is a being crammed into a cubicle with a ton of software resources and cans of Red Bull kind of job. It is a lifestyle you have to learn to love, and I suggest that you be sure that you want to be the talent behind the next big product whose name may appear in an About box somewhere if you’re a product lead but otherwise only having the satisfaction of having written your code concisely and to specification, then maintained it as though it were your own child. And remember to stay fresh with the newest and greatest technology, as your boss will probably expect you to use it even though he probably couldn’t tell you the difference between a loop and a function.
So which programming path is for me?
Below are salary ranges for different expertise of code but also may involve different kinds of roles (not all just programmers). The lower end of the pay scale in Web Development would incorporate entry level positions. Such duties would be image manipulation, quality assurance and testing, and copy editing. As one moves up the pay scale, the duties become more technical such as writing pages and linking active content to the pages. Higher end duties would include project management and supervision, final editing, and mission-critical duties that can make or break a company or team.
On the software engineering side of the pie, the salary ranges appear more narrow but the total earnings are higher in most cases. Entry level jobs would include commenting and documenting code, or maintenance of small functions of code. Junior and mid-level project leaders in the field write significant portions of the code, with the more experienced and higher level employees making the critical decisions about the structure of the finished product. Senior project managers often have to interface with the web development team as well as the junior software employees and upper management and present critical information about the success and failure of the product.
In both cases, salaried, hourly, and contract workers make up significant fractions of the workforce each, and is differentiated by the needs of the company. Some companies may hire for a large project and use contract labor to avoid frictional unemployment, whereas other companies may use contractors as a form of temp-to-hire to find the best talent before bringing them on in either an hourly or salaried basis.
Take into consideration the fact that if you get a degree in Computer Engineering or Computer Science and focus on programming, you are a step ahead in using technologies for web programming as well but have the talent to be on the coding crew. You put yourself in a position where you can do either job and if you decide you want a break from the boiler room where the coders live, then you can drink Starbucks at your cubicle with its neatly arranged Post-Its if you can afford a small salary cut.
Being a web developer has its advantages. There are people working right now with associates’ degrees or even GEDs in jobs paying upper five figures. As freelancing and job portfolios and not the rigorous discipline of engineering are your ticket, you can go where you want if you are willing to put in the hours and pay your dues.
Using an online course will help as well. Team Treehouse, and Udemy hone your skills in other areas outside what you already know in programming. In fact, in the Information Age, it is possible that the above sites would get you the necessary skills, but unfortunately Human Resources still likes to see letters along with your name. If you don’t have a B.A. or a B.S. in something, or at bare minimum an Associate’s Degree, it can be difficult to get the interview. Once you’ve invested that much time, I suggest anyone looking to develop anything go with a coding mentality and learn software development.
Learn the Skills you need for either career with a FREE trial at Team Treehouse