JavaScript Developers
About
Exploring this Job
To become a JavaScript developer you will, of course, need to learn this programming language. But it will also be useful to learn HTML and CSS, other programming languages that are frequently used by JavaScript developers. Your high school’s computer science department might offer classes in these and other programming languages. There are also low-cost and free classes and tutorials on the web. For example, Exercism.org offers more than 125 free JavaScript coding exercises. If you’re a JavaScript newbie, check out the tips and tutorials at https://developer.mozilla.org/en-US/docs/Learn/JavaScript. Once you learn the basics of JavaScript, begin using it to build basic apps and Web sites. Visit https://careerkarma.com/blog/coding-challenges-for-javascript for a list of other JavaScript exercises and challenges. The following online learning platforms offer free or low-cost classes in coding: Code Academy (https://www.codecademy.com), edX (https://www.edx.org), Coursera (https://www.coursera.org), and Khan Academy (https://www.khanacademy.org).
Participate in popular IT forums such as StackExchange (https://stackexchange.com) and GitHub (https://github.com) to build your knowledge and skills and meet people with shared interests.
Inspect open source JavaScript applications to understand how they were created, learn how to structure your code, and use libraries in new ways.
Participate in programming competitions to test your skills and interact with people who share your interests. SkillsUSA is a national membership organization for middle school, high school, and college students who plan to pursue careers in technical, trade, and skilled service occupations. It offers several computer-related competitions. In its programming competition, contestants must demonstrate their knowledge of computer programming, describe how programs and programming languages work, detail the purposes and practices of structured programming, and develop a computer program from design notes and instructions. Visit http://www.skillsusa.org for more information. Here are a few additional programming competitions:
- Microsoft Imagine Cup: https://imaginecup.microsoft.com/en-us/compete/whycompete
- American Computer Science League: https://www.acsl.org
- Congressional App Challenge: https://www.congressionalappchallenge.us
Other methods of exploration include participating in computer science, software development, and other IT-related summer exploration programs that are offered by colleges and universities, high schools, and park districts; joining computer clubs; reading books and watching videos (YouTube.com is a good source) about the field; and talking with a JavaScript developer about his or her career.
The Job
JavaScript is one of the most-popular programming languages. It’s used extensively in Web site and mobile application development, as well as for browser-based applications (when used with other software building tools). JavaScript is used to create Google search boxes, videos recapping the news at the Web site of USA Today, interactive forms, animated page menus, interactive maps, and autocomplete features.
Every employer has its own definition of the job duties, required skills, and educational background of its JavaScript developers, but most developers commonly follow a process known as the Software Development Life Cycle (SDLC), which contains five stages: analysis/plan, design/prototyping, development/testing, deployment, and documentation/evaluation. The number of stages and their names vary by company. Companies that use the SDLC—or another software development lifecycle—aim to reduce the cost of software development while also cutting production timelines and improving quality.
- Analysis/Plan: The developer assesses the existing software or talks with customers, company executives, and other stakeholders about the features of the new software that they will design. The development team then determines the costs, time requirements, and required resources that will be needed to complete the work, as well as potential roadblocks that might slow or halt the development process. These issues are discussed with stakeholders until all agree on the re-design or new design approach.
- Design: Developers convert the software specifications into a design plan called the design specification, stakeholders review the plan and provide feedback, and the developers make changes as needed. The design specification covers issues such as IT architecture, user interface, platforms, application communication methods, and security concerns.
- Development/Testing: The developers begin writing the code. One or two developers often work on a small project, while larger projects require bigger teams that focus on specific components of an application or Web site. Extensive testing is conducted before the product is released to users. For example, developers test code for bugs and implement improvements and fixes. Some testing—such as security testing—is automated, while other testing must be done by a developer or software tester.
- Deployment: The revised or new product is made available to users. This process can be automated (i.e., a user is given a link to download and install the new app) or hands-on when updated software for a complex, company-wide database must be installed. Developers address any performance or security issues that users identify.
- Documentation/Evaluation: Developers complete technical documentation that summarizes their work on the project and details any major issues that arose during the process and what they did to fix them. For some products, developers create user manuals. Developers also use this time to evaluate the final product and clean up any issues that they or users have identified.