Needed Skills for Application Support Engineering

In this article, I'll go over the required skills for becoming an application support engineer.

Programming Language: You'll need to know a programming language to grow an appreciation for the complexity of an enterprise-level application. It is also needed because most high-paying jobs with lots of candidates use algorithmic and data structure questions to filter out less qualified candidates. This is the filtering method its efficiency is most debated, as anyone with enough practice could get good at solving such problems, without having the other necessary skills needed for the job.

Application Stack: Depending on what programming language you choose, you'll need to know the basics of its corresponding application stack. For example, many choose to learn Python, but I decided to go with JavaScript. This led me to learn Node, Express, MongoDB, and React. In learning the stack, I got exposed to how a backend, frontend, and all of its components work. Now the idea is not to make you a full-stack developer. Instead, you'll have to know how these components work and equally importantly how they interact with each other. The deeper you go with this topic, the better understanding you'll have of common application problems and fixes.

SQL & NoSQL: You'll need to know the basic administration of a database system and be fluent in writing queries. You're guaranteed to get asked to extract some data and to look into something that involves writing a query. Now again the idea is not to make you a DBA, instead, you're in charge of a large application so you should be able to interact with its database. I choose to learn MySQL and later TSQL as I got access to the MSSQL enterprise edition. One thing that I got lucky with was that the company that I was working with had many databases and I got hired during the time that they wanted to start a data warehouse. Being involved in that project, allowed me to interact with these different databases and work on writing pretty involved extractions.

System Administration: Let's not forget about being comfortable with working with an operating system. Any application that you work with needs an operating system to run on. The idea behind becoming an application support engineer is that you're already an administrator. This means that you could navigate the shell and conduct any system-level administration. I've seen guys that got hired as application support engineers but they had difficulty with moving files, mounting drives, and making backups. It gets really ugly real quick. In my previous videos, I talked about how you could get started with the essentials of system administration.

Common Protocols: TCP/IP, UDP, ICMP, SSH, SCP, HTTP/S and so on(not going to list all of them) and corresponding ports. How these protocols work and most importantly how they're relevant to your work. If you're working on a system administration certificate, most likely you'll have to learn these protocols. For example, LPIC1, has mandatory sections for covering a bunch of common protocols. For more info, please visit: https://www.lpi.org/our-certifications/exam-102-objectives

REST API: This is one of the most common methods of communication between your web application to its backend. This is widely used and learning REST gives you the needed foundation for learning other API systems too. Knowing an API system allows you to interact with an application or third-party systems. You'll need to know the common methods, e.g., GET, POST, PUT, and DELETE and know the common HTTP status codes. This is also beneficial for your troubleshooting skills and fixing common application problems.

Scripting: This is an area that also falls under system administration, but the idea is that you'll have to be comfortable with scripting and basic automation. You're guaranteed to get asked to write a script, update an existing one, or keep an eye on the scheduled jobs. Knowing how to script and taking it an step further by becoming a toolmaker can give you lots of leverage when applying for high-paying jobs. When I was interviewing for a very prestigious job in Manhattan, instead of getting asked to solve an algorithmic question, I was given a pretty difficult scripting task. When I wrote the script, I took it a step further by turning it into a reusable advanced function, and the interviewer was very impressed. I quickly became the candidate of choice and that was followed by a job offer of 130K base salary plus another 30K as bonuse. And this my friend how important scripting is.

In this video, I'll give you a walkthrough of these skills and how they apply to your work as an application support professional. I made this list based on my decade of professional experience in the industry. Please let me know how relevant this list is to your current job.

Did you find this article valuable?

Support Application Support by becoming a sponsor. Any amount is appreciated!