An Interview with Aaron McCarty
“Successful computer science students should be effective communicators with a natural aptitude for technical work.”
Aaron McCarty is a software developer working for Epic, a company that produces software for healthcare organizations. Aaron received a Bachelor of Science in Computer Science from Carleton College in Northfield, Minnesota. Epic is training him to be a reporting engineer, which is someone who corrects errors in software code.
Aaron decided to study computer science because of a life-long interest in computers. In the future, he hopes to advance to a management position at Epic or start a career in cyber security.
In your own words, what is a software developer?
Software developers create the technological systems that organizations use to store and manipulate information effectively. I only started training at Epic 2 months ago, but once I am an official software developer I will write programs used by organizations to track large volumes of information. In my case, the software that I develop will allow hospitals to see how many people came in with certain complaints and the treatment they received.
My role in software development is that of reporting engineer. I produce database materials called reports, which delineate patients by gender, age and treatment. Once completed, the reports are passed to IT staff who can use them to track patients. This is a new way of archiving medical records, and it is an improvement to the processes that hospitals have used in the past.
If a student said to you, “I am interested in becoming a software developer,” what would your response be?
I would let students know that software developers require good communication skills in addition to the technical skills that one might expect. They have to be able to distill complex ideas for other developers and people who use their programs. They also have to work as part of a team.
In addition, students should know that software development is a rapidly expanding field with good job security. For example, Epic employs a large number and wide variety of software developers, with over 200 being hired in the last 3 months.
What level of education is necessary to be a software developer?
A bachelors degree is a standard prerequisite to work in software development, though it does not have to be a bachelors degree in computer science. At my company, some people hired as software developers come from a variety of degree backgrounds., and those with computer science degrees are not necessarily placed in technical positions involving computer work.
I am considering a position in cyber security in the future, which would probably require a masters degree.
Why did you decide to become a software developer?
I have always been interested in computers but never got to study them in high school. Before college, I actually considered police work, but once I enrolled at Carleton I jumped at the opportunity to take computer classes without knowing what they entailed. Computer science felt like a game of logic, and I had a great time in the degree program. Programming comes easily to me. Somewhere down the road I may pursue police work, but I will continue to work at Epic for now.
What were the biggest misconceptions that you had about becoming a software developer?
I was surprised by how well my computer science degree prepared me for software development at Epic. I turned out to be a better software developer than I expected. I was a middle-of-the-road computer science student in college, but when I started taking training classes at Epic, I discovered that I was quite good compared to my peers. I finished second or third among 40 to 50 students in some class exercises.
What do you enjoy most and least about being a software developer?
Software development suits me because it is an opportunity to make positive changes in programs that affect many people. My work informs doctors of new or superior treatment methods. Information about individual patients, such as their age and family history, is included in reports and can influence a doctor’s options. I could save a life if I do my job correctly. In addition, I work for a good company that cares personally for its employees. My hours are flexible, and I can sometimes work from home on my own computer and transfer the data to work.
Computer work does have its downsides though. Staring at a computer screen for a long time is mentally draining, an issue that many professions share. I need to get up every hour and a half to avoid falling asleep or becoming agitated. There is also a steep learning curve for different company protocols that we follow, like coding standards, which can be annoying.
Software development in general can be deeply frustrating. Computers are cool because they do exactly what you tell them, but that can be an aggravating feature as well. The omission of a semicolon or a “do” statement can leave me staring at a screen for hours trying to discover what is wrong with my program. There are programs that help solve coding problems, but eventually I need to put in the time and effort to deduce those problems on my own.
What is a typical week like for you?
When I become more established, I will probably work a full-time 9-to-5 schedule each day of the week, but Epic is strict about keeping promises to client institutions. If a stated deadline is approaching and our work has not progressed sufficiently, employees are expected to put in extra hours to meet that deadline.