The economic recession has caused some changes on how web programmers work; they tend to be more interested on short-term job prospects. In the meantime, a growing number of new web programmers are entering the market, which makes the competition among them somewhat stiffer. As the result being an average web programmer is no longer enough to survive for long. These are nine skills that should be included in your resume, to allow you survive in any competition climate.
1: Three big fundamentals
These three platforms and languages are what form the Net today; it’s quite unlikely that we will see a radical change that will make any of them obsolete. All web developers should be entirely skillful in PHP, Java and .NET (C# or VB.NET). It may not be enough for you just to understand their core languages, with the growing complexity of today’s project, you should have more understanding on their libraries and associated frameworks.
2: Web Development Process
Understanding technical skill is no longer enough for average web programmers, they should also know how a web development project works. It is a skill that is no longer reserved for project managers. Programmers must understand all necessary phases in a web development project, what problems that often occur and how to solve them effectively. This will allow them to work better as members of the team. Development team is increasingly being considered as valuable partner in terms of project management. This means that web programmers who understand the project management can contribute in an entirely visible, valuable way. A programmer who can say, “I think we will get more value by adding this functionality, as it won’t disrupt our timetable”, or “Well, these requirements really don’t match the usage patterns in the site statistics” will stand out. As much as many programmers resist the thought of having to understand anything about the project management at all, it’s undeniable that many organizations favor (if not require) programmers to have at least a good sense of the basics.
3: Web services
JSON or XML? REST or SOAP? Choosing the right services depend entirely on the project’s nature and it’s quite hard to work effectively for web programmers without the ability to create and manage web services. Even RPC, COM and ODBC domains are slowly being transformed to Web services. Those who can’t work with web services may find themselves relegated to maintenance and legacy roles.
4: Rich Internet Applications (RIAs)
Flash is now a mature Web platform and slowly grows to more than just animation for ads; it now offers new features, such as AIR and Flex. Its competitors, Silverlight and JavaFx are also increasingly offer better features. To further complicate things, HTML5 also incorporates all of RIA’s functionality, for example integrated databases support. In the next 2-3 years, a deep knowledge on Rich Internet Applications will become an important requirement for all web programmers.
5: Soft skills
Increasingly, web programmers are required to work outside their office to meet people from other departments and fields. A Chief Financial Officer can’t update his company-wide accounting rules without discussing it with someone from IT department. An operational manager won’t be able to implement his optimization plan on the call center process without asking the IT department to make necessary changes on CRM workflow. Often, clients must discuss directly to web programmers to make sure that their requirements are fully met. You may not need to be as skillful as a salesman, but showing that you can communicate well with people from any fields will make you a highly sought after web programmer in the job market.
6: Functional and dynamic programming language
Languages like Ruby, F#, Groovy and Python are becoming more and more influential in the web development industry. While Python and Ruby are more popular in some sectors, due to the implementation of Silverlight and Rails framework, respectively. A deep understanding on these languages will not only make your resume looks good, but it will also expand your view on the future of web programming.
When it was first introduced, many web developers felt skeptic as it seemed like a haphazard approach to a time-tested tradition, favoring anarchy instead of well-established standards and simply throwing away all controls. But as years went by, it becomes apparent that the concept of Agile is both better expressed and better defined. Many web development companies are adopting Agile to improve their work process. Although it is not a perfect solution to all problems in a project, it certainly has its place in many kinds of projects. It is becoming increasingly apparent that programmers who have enough knowledge and experience in Agile are wanted by many employers.
8: Personal Organization
At first we didn’t have a bug tracking system dedicated for web development projects, as the result we must contend with improvised tools and our own choice of IDE. Fortunately, with the introduction of excellent integrated stacks, such as Microsoft Visual Studio Team System it becomes easier to make our sites cleaner from annoying glitches.
Even so, even the best tool will fail to serve its purposes when the programmers fail to organize themselves, developers must understand how to gather all issues and solve them in a most efficient manner. Web programmers must have a habit to rigorously coordinate themselves with the rest of their teams. Those who store their codes in poorly organized folders and fail to document even the smallest changes are no longer welcomed in a tightly-coordinated web development project.
9: Web development for mobile devices
In 2000s, we saw that the Internet is no longer considered as static pages without much of interactivity, in fact we begin to see some web functionality that can replace common desktop apps, as the result, it is increasingly important for web developers to think, behave, and possess the same level of skill of desktop apps programmers. RIAs are a good solution to implement feature-rich web apps, however its implementation in mobile devices is completely different. No matter what path you’ll choose, adding mobile development skill in you resume will make you look good in many ways.