Wednesday, November 12, 2008

I Graduated now what?

I wish there was a trifold on the racks around campus addressing that question.
Since I am anxious about it I got this tips from http://www.search-this.com/2007/04/18/just-graduated-now-what

"It’s hard to believe that I graduated college nearly two years ago and have been working at an Insurance Company as a programmer since. I would like to tell you that college completely prepared me for a job in the real world, but I would be lying if I did.

During the time I spent searching for a job, being interviewed, and now having been in my job for some time, I have learned some valuable lessons that I’d like to share.

First we’ll look at some suggestions of what you can do while you’re interviewing for a job and then I’ll talk about ways to make you more successful at the job you land. Let’s begin.

1. Research the company before contacting them.

This is absolutely vital. Research the company, looking at both their past and the future they have planned. Make it your business to know their history, how many employees they have, and their corporate earnings for the year prior. The more you know, the more you can impress them during the phone, or in-person interview.

During several of my own interviews, it was fun to see the expressions on everyone’s face as I ran off their earnings for the prior year, or that I already knew what areas they had regional offices in, etc. By doing this research, you prove that they are of interest to you and that raises your chances considerably.
2. Bring a notebook of questions.

Come up with a full list of questions you want to ask about the company. For example: What software do they use for web development? What is the process of moving an application to production/making it live? What technologies do they use, and are they open to implementing ones you have worked with?

Have at least 10 questions, one per page in your notebook, and write down their answers. You are likely to meet with several people, so track each person’s individual answer. Again, we are going for showing interest in the company, by actively asking questions and writing their response, you will prove your interest.
3. Write a follow-up letter.

After the in-person interview, write a letter thanking them for the interview. Also include what you learned during your visit and that you look forward to their response. I have read countless times that companies are willing to give an applicant a second look if they send a follow-up letter.
4. Mind your p’s and q’s.

Be polite, say thank you, shake hands, and by all means, if they take you out to lunch, do not tell stories about the stupid crap you did in college! Keep that to yourself and highlight the good no matter what setting you are in. Believe me, they will tempt you to say something stupid. During one of my interviews, two of the people interviewing me brought up a conversation over logging their child’s car habits using a device that plugs under the dash board. The parent can remove the device and see what speeds their child was traveling along with other data.

During that time I kept my mouth shut no matter what my thoughts were on the subject. Obviously it was not any of my business and so I did not make it any of my business. When they asked me what I thought of such technology I simply stated, “In this day and age, the only thing that holds us back is ourselves. If we think anything is possible, than we can achieve it.” It was short and precise and allowed me to switch topics while answering their question. It also gave them insight on my thought process and that I felt anything could be accomplished given the right attitude.

Now that you made it through the job process and landed that developer job let’s look at a few skills that you will need while in the job.

1. Be willing to admit your mistakes.

Take it from me, you will make mistakes. Managers and Supervisors know this and so should you. Admit to your mistakes. If it was lack of testing, admit it, and go beyond it by recommending ways this can be avoided in the future (as that is the next question you will get from a Manager or Supervisor). If you had too many projects to work on and that was the reason, say so. Your manager will understand, and hopefully he/she will adequately adjust your schedule so you can generate a better product.
2. Learn to manage time.

30% of my job is managing my time, identifying the high priority projects and giving them adequate time to complete them by their due date. This isn’t something you can just do right out of the box; it takes a lot of guess work at the beginning but once you have done it for a few weeks, you should have a good idea if your method is working. For me, I like to analyze everything necessary to complete each project. Once that is done, I will estimate the number of hours it will take to complete each step. Then I will determine what days I will work on each step.

When I first started out, I was amazed at how quickly time goes by while programming. It would seem as though I had only been writing code for 30 minutes, but in fact 3 hours had passed. Expect your initial estimates to be wrong, then adjust your estimates appropriately as your experience increases.
3. Invest in books.

I can’t re-iterate this enough. Buy book after book after book. Your job is extremely demanding, and your company will likely pay for a good number of the books you want.

Now you do not need to read every book cover to cover. I have several that I use as references (ie, The Bible series, such as the PHP Bible). Some of the books I own I just skimmed for topics of which I was interested in, and others I have used so extensively they are starting to fall apart.
4. Be prepared to learn.

One thing you need to realize right now is that you will be asked to continue to learn. Yes, you graduated, you think you will never have to read another book, or take any tests. You are WRONG. Every year, I am asked what I plan on learning in the upcoming year to improve my day to day work. Be it a new technology, or something related to insurance that may help me with my job. Then I have to find a way to quantify that I truly did learn the material by finding an exam I can take or adequately using the technology through my development.
5. Learn your standards.

Understand that HTML, XHTML, .NET, etc all have standards specified by either the W3C or Microsoft themselves and many companies try or want to try to follow them. Our company follows the Microsoft .NET coding standards fairly closely, when to use pascal case versus camel casing, good OO (object oriented) design, etc. I suggest learning these and mentioning your knowledge of them during any interview process.
6. Be willing to help, but know when to say ‘no’.

This is one I am still working on. I get asked a dozen questions a day. Unfortunately, I haven’t been too successful at telling people I don’t have the time to help them with their problem. I still drop what I am doing and give them my full attention. So far this hasn’t affected my time management, but I am certain that it is just a matter of time before it does.

So be willing to help others solve their problems and answer their questions, but if you are extremely busy find a way to let them know you will have to help them later.

Hopefully these tips will help you as you venture into the real world to fill your role as a Web Developer, Programmer, or another position as well. Be sure to leave your tips for those who just graduated, tips for interviews, or even your experiences."

No comments: