Booz | Allen | Hamilton

Section 1.1 - Advertising My Availability

The resume I put together was done so with the knowledge I received while taking TSC-210. But the only real time I had to use this was after I started working and my supervisor needed my technical background to figure out what category I would be put under for billing purposes (I got the job through contacts, not normal resume sending).

Section 1.2 - Finding out About Job

It's all about the contacts. The single most valuable asset when getting a job is whom you know. This is how I acquired my position with Booz Allen Hamilton the first time. Asking someone you know about what is available within the company they work for is one of the, if not the best way to acquire a job. By doing this you can find out about those jobs that have yet to be posted by the company, or be one of the first to be notified about a new job position. I had my father let it be known to some people in the office that I was interested in an internship as a programmer, seeing as I am a CS major. The first summer that I tried this came up empty, not because they didn't want me, but because they couldn't afford an intern at the time (office was too small). So the next summer, I get a phone call, not even expecting it, and was offered an internship with Booz for the summer (Because I had the inside track they notified me of an opening without having to check back with them again. Contacts!). At the end of my first term with Booz, I was offered a return for the following summer, and of course I took this as well.

Section 1.3 - Landing My Internship

I was contacted by Booz Allen Hamilton, about an internship with them. My manager (level 4) directly called me to conduct a phone interview. This was the only screening process there was before I started work. I didn't have to go through any more because of my connection to the company. I had already visited the site several times in a social function, so I was familiar with it. The only advice I can give about this interview process is to be honest, there is no point in lying about your skills and abilities. They will only find out for themselves what you are capable of.

Section 2.1 - Employer

I have interned for Booz Allen Hamilton for 2 summers now, in the Colorado Springs office. My primary assignments involved coding in Java, c/c++, Perl, and utilizing stk. I worked a semi normal 40-hour workweek. I got to use flex hours, meaning I worked 40 hours a week, but I was able to disperse those hours for any day of the week. For example, I would work 4 10-hour days and take Friday off. This flexibility was great. Not only did it allow me to leave when necessary (no solid work hours), but I was able to plan my time better to suit my working habits. I would work from 7 am till 3-4 (depending on how long lunch went), sometimes even longer if I wanted to make hours for the end of the week.

The team I was on is called The Digital Solutions Team. This is then divided into several other sections. Only a small portion is actually committed to generating code. We have other groups that are task specific. Some look for more work, some are technology specific to a program or data type, some are our graphics people, but we all fall under some sort of development.

Our clients are Government/Military. And because of this a lot of work we do requires clearances for specific data use. And because of this and the fact that getting a job with Booz after college is done is likely, they are paying for me to get processed for a security clearance now instead of after I would start (takes like a year to get one).

The pace of work within our office can typically be described as relaxed, unless a deliverable date is upcoming. Not to say we don't get work done, you just typically don't have anyone breathing down your neck pushing you along. We have a level of trust that allows for us to do our work knowing that the others on the team are doing theirs.

Section 2.2 - My Job

I was hired as the only intern in the Colorado Springs office. I was hired with the understanding that a person with only school knowledge doesn't immediately have what it takes to be everything a programmer should be. There is just so much school doesn't teach you. So I went in with my 5 years programming experience (now 6), in Qbasic, Pascal, and Java, and proceeded to learn more in one summer with Booz than I did my whole time in school. As my supervisors keep telling me, "This is a learning experience." How true that statement is.

My primary tasking this summer was on a project called FIRE, a Modeling & Simulation tool.

The object of our project was to be able to create a fake Military base populating it with tanks, buildings, personnel, planes, and setting up paths for our spy planes, satellites, etc. In essence setting up a real life scenario (though the one we used was completely fake). Running the scenario would cause our spy planes or satellites to take pictures, intercept radio transmissions, etc. Then based on certain key information, the program would know the next steps to take. If an object is spotted at (X, Y), then send this other plane with is equipped with a camera to go take a picture at (X, Y). All of these pictures, transmissions, etc, is all part of a Situational Awareness. This Situational Awareness, is simply how much we know about the base. For every Fact we acquire from pictures, transmissions, etc, our awareness increases. The object is to know as much as possible about the base as possible.

My specific jobs for FIRE included Save/Load functions for preference data, Remote Messaging Services, report generating functions, and creating a Perl script testing a specific ability of the program. My biggest problem with generating this code was the fact that I've not had C/C++ before. It wasn't available in high school, and JMU doesn't teach it either. So I had to learn this language on site, as well as learning STK, and Perl. I was able to do this and complete my work in a timely manner. My Co-Workers were great about all this, as they helped me along when I was learning, answering any questions I had.

I also had some other work, including graphic work for proposals. I helped create graphics there were to be used in a presentation in PowerPoint, but the graphics themselves I created with the use of Illustrator. This work was given to me, more because I sought out more opportunities beyond just coding. I feel this is a definite course of action everyone should take. Broadening your abilities is a great way to make yourself more marketable.

Section 3.0 - Daily Activity Log Excerpts

7 am - Arrive at work
7 - 11 - Coding
1130 - 1230 - Lunch
1230 - 4 - Coding
4 pm - Go Home

This is a pretty standard 8-hour day for me. Every once and a while a meeting would be part of my day or a few hours working on another project (graphic work), but other than that, it followed this design. The ability to make my own hours made things so much easier. I could come and go, as I needed to.

There were no real problems, other than the lack of knowledge on some programming languages, but those were worked out with the help of my co-workers and some books.

Section 4.0 - Career Advice for Current CS Students

While in school, take courses in algorithms, theory, and all the other aspects of programming other than actual programming. Granted you have to take some programming classes and these do you some good but these in my opinion, are not the defining aspects for being successful on the job. You learn more about coding while on the job than you can ever hope for in school. The best way to learn how to be a programmer is to just do it, not just the small programs you get in class, but make a program of your own. Just play around with ideas. This is the single best way to become a better programmer. While I was working for Booz during my first term, I was primarily a Java programmer. Yes cs139 and cs239 were great assets to my ability to perform on the job, but if you have ever had programming you should be able to learn a new language, as its mostly syntax. And there will always be people around you that you can ask a question. Some of the courses I found to be the most useful have been TSC-210 (technical writing is a must in business), CS139/239 (because it taught the basics of Java, which I used my first term with Booz).

I can't emphasize this enough though, but the single greatest thing to have when looking for a job is contacts. Just know other people already in the field, just by knowing someone in the field you are a few steps closer than your peers to getting that job. Heck, you may already have a contact, your friends father or mother could already be in the field. Or you parents might know someone who is. When it comes time to look for that internship or job, talk to these people, let them know you are interested in this field. Just network, you never know when down the line just knowing someone, if even in just passing, can help you to land that job. Go about the normal routes too, but never underestimate the value of contacts.

Section 5.0 - Internship Value

This is the single greatest learning experience you can have before going out into the work force. If you can get the chance to have an internship, take it. Not only do they offer great job experience for your resume, but you also learn more than you ever could in a classroom. And if you are working for government contractors like I have been, then they may even start your application for a security clearance. That alone costs a good amount of money to have done, and it is a great sign that they are interested in you working for them after school. And if you decide you do not want to work for a company that requires clearances, just the fact that you were able to get one can help you on your resume. Or if you choose to go to another company, you can transfer your clearance.

I have learned so much on the job during these 2 summers. Things like Purify, CVS, STK, Jam, Unix, diffing tools, Perl, C/C++, better code design, graphic programs (Illustrator in particular), as well as just general things about a real work environment (how to integrate myself with a real team and what is expected from me in an entry level position). You learn about how real business is done. There are just so many aspects about an internship that you can benefit from. Some internships are like school, but you get paid! That might be enough motivation for you right there, the fact that you can learn and get paid at the same time.

Because of the 2 summers with Booz, I am sure getting a job with them after I get out of college will be simple. Or if for some reason I don't go that route, the experience I have gained while there will help me tremendously when applying for a job elsewhere. It will also likely put me ahead of the other out of college applicants who did not have the privilege of an internship. I know now from my time with Booz, that I will be successful when I venture out and get that first real job. And knowing that has lifted a lot of stress/worry from my academic career. I feel that I am ready, when the time comes, to go out into the workforce an asset to whichever company hires me.