Web Application Developer For A University
Job Title: Senior Web Application Developer
Type of Company: I work for an Ivy League college, writing web application software of all kinds to support its faculty and staff, especially in such areas as Human Resources and athletics.
Education: BS, Computer Science, West Virginia Wesleyan College (Buckhannon, WV)
Previous Experience: I have worked as a computer programmer or a software engineer for a number of computer software and hardware companies, including CVS Pharmacy, Computer Associates, and Digital Equipment Corporation (at one time the 2nd largest computer in the world). I have written commercial software programs, military software, Windows operating system software and firmware, and hundreds of computer programs and internet software applications.
Job Tasks: I do everything necessary to develop computer software to support the college. This includes talking to college officials about what they need, writing software to fulfill those needs, and making sure the software works. We call this analysis, design and implementation.
When someone needs new software, a web application, for example, that lets people reserve an athletic facility (like a hockey rink), they come to my group. I will talk with them about what needs to be done and write a plan that explains what the software will do.
Using that plan, I then make mock-ups, or write a prototype to see how the software will look. For complex projects, I may use modeling tools that depict the software and data as graphs or pictures.
If the people who first approached me like the plan, I then write software in a computer language and use special software tools that make my job easier, such as databases. I can spend several days or several months writing the software. For large projects, several people may work together as a team.
Sometimes writing software is like writing a book, where you make every bit of the software yourself. Other times, it's like building a model with Legos, where you have to find just the right pieces, and fit them together to get the desired effect.
When the software is complete, the users test the software, and I make requested changes to insure it does what everyone expects.
After we release the software, I continue to provide assistance by writing instructions on how to use it, or by adding new features and capabilities when they are requested.
Best and Worst Parts of the Job: I work for an organization known throughout the world and with people who are the best in their field. The software I write is used by thousands of people a day, which gives me a sense of accomplishment. The technologies I use are constantly changing, so I never get bored. I am always learning new ways to do things.
Because the environment I work in is always changing, new issues come up every day that were never anticipated when the software was first written. So once a month, I am "on call" to support the software our group writes, around the clock.
Job Tips: One major misconception about writing software is that you need to be good at math. Although some application areas, like simulation software, need strong math skills, most don't.
However, organizational skills are important. I have found that my skills from the debate team have been as useful as my computer classes for organizing my thoughts and my software, and for communicating my ideas to others.
Some people in the computer industry deal with broad concepts, but on a day-to-day basis, the best skill is an attention to detail.
Additional Thoughts: Computer technology is always advancing, so the job of a software developer is always changing. The core skills I learned in college still apply, but the details have changed over and over. If you wake up looking forward to the "next new thing", then you may have a future in software development.