INTERNSHIP REPORT

Michael O. Lam
Summer 2005
Immerge Technologies, Inc.

Getting My Job

Like everyone else, I created a professional resume in TSC 210, I went to career fairs and I interviewed with various companies. As most people eventually admit, however, getting a good job really comes down to who you know. I knew Joshua Blake, Justin Creasy and Marcus O'Malley already from various classes (ie. intelligent systems class, video wall class) and they knew me. When I learned that they had created a company and might be hiring interns, I approached them and asked to be considered for an internship with them. They arranged an interview and eventually offered me the position.

About My Job

Immerge Technologies, Inc. is a company that generates good ideas for products and then develops them to release. Once the product is released, the marketing and sales of that project are delegated to other companies who pay Immerge an initial licensing fee to cover the development of the software. Immerge also recieves a certain percentage of the product sales. This gives the employees of Immerge Tech more freedom to concentrate on developing good ideas without having to worry about sales and marketing as well.

My job at Immerge Technologies, Inc. was primarily to assist the head programmer, Justin Creasy, in the work of researching and implementing various parts of the software currently under development. I worked on two main projects during the summer. The first project, the video wall, involved significant, specialized networking and graphics coding work. Unfortunately, this project was put on hold temporarily after we completed the first major networking component. The second project was a slightly smaller program that involved more standard Win32 software development.

Most of the programming was done in C#, a relatively new .NET language that combines some of the best attributes of C++, Java and Visual Basic. For most GUI development, we used .NET Windows Forms. I must admit that these software development tools are quite effective and easy to work with. It was also quite educational and enjoyable to be able to experiment with a beta version of Avalon (Microsoft's new user interface graphics subsystem to be released next year) as well as the corresponding XAML scripting language.

Major tools used:

  • Microsoft .NET platform (both 1.1 and 2.0 beta)
  • Microsoft Visual Studio .NET 2005 Beta 2
  • Microsoft WinFX SDK (Avalon/XAML)

An Average Day

Of course, every day was slightly different, depending on the current project and focus (sometimes I also worked with the technical communication team), but this is the general idea of what I did every day at Immerge Technologies:

9:00amArrive at work; check email, make a cup of my special "clear" coffee (ie. water) and say "hi" to the less geeky types who usually arrived earlier at 7am or 8am.
9:30amMorning team update meeting: what you did yesterday, what you're doing today, and what's holding you back
9:50amMeet with Justin to determine goals and tasks for the day and whether to work together or split up
10:00amWork on current programming problem: researching techniques, writing code, discussions with Justin, etc.
noonLunch! I technically get a one-hour lunch break but I normally stay at my desk anyway and read Slashdot, etc. while I eat.
1:00pmBack to work; sometimes continuing the morning's work, sometimes starting a new problem
5:00pmStart wrapping things up and getting ready to show/submit work next day; by this time many of the others have already left
6:00pmDone. Time to go home, eat supper and play the Battlefield 2 demo (I'm too cheap to buy the real thing).

Career Advice

Learn how to learn. College is not a vocational or technical school; it will most likely not teach you the specific knowledge you will need for your job. You must be able to learn quickly and effectively to pick up new concepts and software tools in order to distinguish yourself. Motivation is key.

Internship Value

My internship was very valuable; I learned an enormous amount about specific software tools as well as about how to apply techniques in real-world development. I also learned a good deal about marketing, advertising and document design because of my exposure to the technical communication department of Immerge Technologies, Inc. All things considered, the internship was an excellent experience and I heartily recommend that students who are given an internship opportunity take advantage of it.

Pictures

The whole Immerge Tech gang (L to R): Justin, Josh, Marcus, me, William, Chris and Marty.
My cubicle: not too neat, not too messy. Perfect. :-)
The view from my cubicle of our central meeting area.
This is either Justin or I discussing something, or me having a heart attack...I can't remember which.
Chris working hard.
Justin working hard.
The Immerge kittens: "Avalon" and "Indigo."
The technical communication "department."

Links

Here are a few links relevant to my internship: