dcsimg

Career Story: Software Engineer For A Defense Contractor

Software Engineer For A Defense Contractor

Job Title: Software Engineer

Type of Company: I work as a software architect for a defense contractor.

Education: BA, Computer Science

Previous Experience: None, really. I've been working at the same company ever since graduating from college.

Job Tasks: I develop and guide the software architecture used for large-scale government defense projects. This includes developing threading models, communication models, design and development guidelines, and general infrastructure guidelines. I also help developers with design, coding, and debugging problems. I spend about 20% of my time writing documents and presentations to guide and instruct developers, 50% of my time resolving integration and system issues (e.g. bugs), and 30% of my time working with developers.

A typical day involves answering questions for developers, helping developers and integrators understand the intended architecture of the system, helping developers and integrators resolve defects in the system, discussing future development plans with the management team, and generally helping to resolve any day-to-day development crises. (This is largely because the architecture on my current project has stabilized over the past two years. Previously, I spent much more time designing software components and less time helping out with issues).

This also involves a good deal of process creation and refinement, where "process" refers to the procedures and rules used to control and measure the quality of our software rather than "process" in the computer science sense. This takes much more time that I would have expected, but that's largely a function of working as a government contractor.

Best and Worst Parts of the Job: The best part of my job is seeing a long-term project develop over the years into a final deployed system. The day-to-day nature of my job changes as the system progresses.

The worst part? Working for a defense contractor means following numerous government processes, which can be a bit jarring at first (since there's a high ratio of paperwork to technical fun).

Job Tips:
1. It's important to understand how programming languages work "under the hood" rather than just understanding their syntax.

2. Take courses in computer and OS architecture -- e.g. understand the mechanics of threading, communication protocols and disk systems.

3. Learn to effectively debug problems. Any sort of software will always contain defects, and I think the measure of a good software engineer is his or her ability to assess and resolve the cause of a defect. Programming knowledge is of secondary importance.

Popular Schools offering Computer Programming Software Development Programs

quickinfoClick 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

Matching School Ads
The Art Institutes system of schools
North Hollywood, Sacramento, San Bernardino, San Diego, San Francisco, Santa Ana

With an education from an Art Institutes school, imagine what you could create.

  • Programs: Software Development for Creative Technologies (Bachelor of Science), Game Programming (BS), Visual & Game Programming (BS)
  • Degrees: Bachelor

Which career path will you take – Business, Nursing, Education, Psychology? Something else? GCU offers more than 100 majors to get you started!

  • Programs: B.S. in Computer Programming
  • Degrees: Bachelor
ABCO Technology
Los Angeles

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.

  • Programs: Programming, PHP , Computer Science , more...
  • Degrees: Certificate
Platt College
Anaheim

Turn your talents into a career at nationally recognized and accredited Platt College.

  • Programs: Web Development Programming Diploma Program
  • Degrees: Certificate
Coleman University
San Diego

Advance your information technology career with a respected degree from Coleman University.

  • Programs: Software Development - Bachelor's Degree, Software Development - Associate Degree, Game Development - Bachelor's Degree
  • Degrees: Bachelor, Associate
California College San Diego
National City, San Diego, San Marcos

The Secret to Getting Ahead is Getting Started

  • Programs: Computer Programming (AAS), Computer Science - Software and Mobile Application Development (BS)
  • Degrees: Associate, Bachelor

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.

  • Programs: MS in Computer Science
  • Degrees: Master

You can advance your career with a degree from Charter College Online.

  • Programs: Certificate - Computer Technician
  • Degrees: Certificate

Learning at Full Sail University has always centered around interaction and the exchange of ideas. Our online curriculum fully embraces this philosophy.

  • Programs: Mobile Gaming
  • Degrees: Master

As a student at South University, Online Programs, you will receive the same quality instruction, variety of learning options and level of service found at the campus locations.

  • Programs: Information Systems & Technology: Information Security Studies (MS)
  • Degrees: Master
Matching School Ads

Additional Career Stories for Software Engineers For Applications

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.

All Types

You are visiting:

Find a school near you

What are Career Stories?

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:

  • a typical day or project
  • tips and advice
  • best and worst parts
  • educational background
  • previous experience

Browse hundreds of Career Stories

More Details On This Career

Please also see our detailed information about Software Engineers For Applications, including:

Back to Top