Andrew DiCosmo
Software Engineer, Peters & Associates, Oak Brook, Ill.
"I've been at the right place at the right time," Andrew DiCosmo says of his career. "And I had the right skills at the right time." Working at a local steel fabrication company in high school, he moved from a laborer to an office job, where his managers soon found out he was studying computers at ITT Technical Institute. So IT assignments, such as desktop maintenance and software upgrades, started coming his way. He went from working 60 hours a week, racking up overtime as a laborer inside the factory, to a 9 to 5 office routine, paying roughly the same amount of money.
As he progressed at ITT, the steel fabrication company's IT assignments became more sophisticated, as supervisors gave him programming-related tasks. Eventually, he became the company's IT manager at more than double his original laborer pay. At the same time, DiCosmo began to work on his second associate degree in computer science. Whereas the ITT degree focused on networking, his next associate degree, and his subsequent bachelor's degree focused on programming.
DiCosmo left the steel fabrication company in 2008, and was hired to be the CIO/IT manager of a global manufacturing company. "It wasn't a fun job—very high pressure," DiCosmo says. He eventually left the manufacturer to start his own IT consulting company. IT recruiters kept calling him, however. In January, DiCosmo, 28, accepted a job at IT consulting firm Peters & Associates, where he finds the work satisfying. "I learned that I don't have to own a business to be an entrepreneur. I can just work for a company that allows me to be one. I can still develop new products and apps and put those out into the world."
Education: Associate degree in computer science, ITT Technical Institute; associate degree in computer science, Prairie State College, Chicago Heights, Ill.; bachelor's degree in computer science, Governors State University, University Park, Ill. Currently pursuing a master's in computer science, also at Governors State.
Certifications: CompTIA A+, CompTIA Network+, CompTIA Security+, MCPD: SharePoint Developer 2010; and MCTS: Microsoft SharePoint 2010, Configuring
Tell us about your current job.
The majority of my job is system design development involving IT system analysis, business design, software development, or all three of those things. I identify a problem, come up with a solution and develop software to help provide the solution. I work with clients, as well as project and account managers from our company, and report directly to the client.
I mostly work out of my home office, which is about an hour away from our company office. On occasion, I'll have to travel out to a client. My tasks vary daily. For example, last week, one day I was doing system design architecture for a client — just design, no coding. The next, I was developing a website for a client. And another day I was researching a new product coming out, and then I started working with a client to develop an Android application.
I take classes in the evening, and I'm also an adjunct professor at a local community college.
What's the best part of your job?
I like helping solve other businesses' problems. It always requires me to learn new technologies, and it doesn't require me to work on the same thing, day in and day out. I also like that I can work remotely.
What's the worst part of your job?
One of the best parts of the job is also the worst part of the job: Keeping up with all the technology changes can be very challenging. For example, after working with SharePoint 2010 for a couple years I feel very confident in that product. Now Microsoft just released SharePoint 2013.
What advice do you have for someone who wants to pursue a career in IT?
Focus on your fundamentals, get certified and get experience. If you want to do something in computer networking, for example, you need to have a high level knowledge of computer hardware—like with the CompTIA A+ and the CompTIA Network+ certifications. Get experience by doing freelance work or by volunteering in your local community.
For a computer network tech position, employers want to see you have at least CompTIA A+, CompTIA Network+ and MCP professional certifications. For entry-level positions, they know you are not going to have much experience and will bring you on at below rate. But system engineers should have at least one to two years of experience, in addition to certifications.
Finally, I always suggest looking at job boards for your desired position to make sure you learn those skills that employers are looking for and don't spend much time learning proprietary skills or software.