Job Title: Software Engineer
Type of Company: My company is a large defense contractor. My division does mostly radar systems. I am in the software engineering department.
Education: BS, Electrical Engineering, Manhattan College (Riverdale, NY) MS, Electrical Engineering, Polytechnic University (Brooklyn, NY)
Previous Experience: I have been at my current company for 20 years. I started as a software developer and then moved to software integration where I worked my way up to Software Integration Lead. As I learned more about software and the application domain, I became a software architect.
Job Tasks: Most of the programs I work on are designed to control radar systems for the Department of Defense. Each of these complex programs contains 350,000 to 500,000 lines of code and are developed in a "divide and conquer" process. As a software architect, I am responsible for breaking down the overall system into manageable pieces, each of which can be developed by a team of 10-15 people. In order to make sure that everyone knows what to do, we document the interfaces between each section of the program and develop a clear outline of what each is supposed to do.
Most of my day is spent working with the software developers to make sure they understand the requirements. I do a lot of teaching about radars and I review their designs to make sure that they match the rest of the system and comply with the interfaces. I also spend a lot of time analyzing the results of the tests we conduct to make sure that the software is doing what it is supposed to do. When there is a problem, I work with the developers to identify where and what the problem is to help them fix it.
As we are developing the software, most testing is done in a simulation environment while other groups are building the actual system hardware. When both are ready, then we have to make sure that the software can correctly control the hardware. This usually involves travelling to a test site and making sure that the system works as a whole.
Having been doing this for 20 years, I also work with other programs as an independent reviewer to make sure that they get off on the right foot.
Best and Worst Parts of the Job: The best part of my job is that I am constantly learning new things in a number of areas. I also enjoy solving problems. Being able to mentor younger engineers is something I find very rewarding.
I think the worst part of my job is that sometimes there is a lot of pressure to meet deadlines. We occasionally need to work overtime and/or come in on weekends to get everything done.
Job Tips: When I was in school, I was very interested in hardware design. I wanted to design computer chips. But my career took me down another path and I have transitioned into a software architect and am also involved in systems engineering. The most important thing I have learned is that you always need to learn more. I see many software developers who think they only want to sit at their desk and write code all day. Writing code that no one can read doesn't help anyone, so being able to communicate both verbally and through writing, is very important. I have also found that, no matter how much I think I know, there is always someone who knows more. Dealing professionally with people and maintaining relationships will help you continue to learn and gain people's trust and respect.
Additional Thoughts: The coolest thing about this job is seeing the systems that I have developed actually work. The biggest surprise is that I have been able to do so much travelling. The systems have been deployed in areas from Alaska to England. Volunteering to deploy with the systems to do on-site integration and testing has not only allowed me to learn more, but it has afforded me the opportunity to travel more than I ever would have thought.
Click the Visit School Site buttons to go directly to a school's website and learn more about the school and programs it has to offer. School website will open in a new tab. .
Click the Request Info buttons to request more information from a representative at the school
Grand Canyon University's online technology programs offer a premier educational experience designed to lead you to a career in science, technology, engineering and math.
Turn your talents into a career at nationally recognized and accredited Platt College.
ABCO Technology is an accredited computer training academy that offers diploma programs for individual students, professionals and companies to learn different areas of Information technology and seek gainful employment.
The Secret to Getting Ahead is Getting Started
Maryville University is a private university in St. Louis County, Missouri.
50 Years of Excellence In Education
Recognized by the U.S. News and World Report for: Best Online Programs, Bachelor’s 2017, Best Online Programs, Grad Education 2017 and Best Online Programs, Bachelor’s for Veterans 2017
Earn your Master's in Computer Science online from Syracuse University without relocating or leaving your job. GRE waivers are available for those who qualify.
You can advance your career with a degree from Charter College Online.
Making the decision to earn your degree and pursue your career goals could be the best decision you ever make. Enroll at ECPI University and you’ll join a collaborative and fostering learning environment, surrounded by faculty and staff who are there to support you through the entire process.
What Are You Waiting For?
The inside stories from people actually working in the field.
Click a story title to show the story, and click the title again to hide it.
Career Stories are concise, real-world career overviews written by people relating their personal career experiences and wisdom. They provide invaluable insights and mentoring advice to students and career changers.
Most stories include:
Please also see our detailed information about Software Engineers For Applications, including: