Chicago Calls

Today is my last day at Hiperlogic/TotalCAE, I’ll probably be back in the fall, but these next ten weeks will be the first time I will consider myself an employee of a different company, and that company is Citadel LLC. Citadel is a hedge-fund company and is absorbing me into their Citadel Technology (CTECH) Professional Services. Don’t ask me what that means or what I’ll be doing because I don’t know.

Looking back, I have learned a great deal from my first job. I’ve written about a small subset of the things that I have experienced while on the job. Quite honestly, I consider myself extremely lucky to land that internship. I was a freshman in Computer Science at the University of Michigan and I, without too much thought, applied for various positions posted on the College of Engineering’s career site. I had missed two prior career fairs, for one reason or another, and so with a couple weeks until summer break my hopes weren’t high for landing a internship.

I received only one email from an interested company, and that company was Hiperlogic. One phone interview later and the person on the other end of the line promised me the job. It was only later that I learned that this was a rarity, people don’t normally get a job after a single phone interview. I guess I wooed him with my talk of design patterns and emphasis on efficient code, but more likely it was the fact that I knew C# and that was what he was looking for. It surprises me how scarce C# knowledge is in the university and student population, considering how popular C# is in corporate settings. I still laugh today when I remember asking about team programming and interviewer thought I said gene programming. I would have stopped and corrected him, but it was such a good answer that felt it would be a shame not let him finish.

I don’t think I could have had a better first job. I worked in Ann Arbor, in a building called the Tech Brewery that housed tech startups. The dress code was extremely casual; on the first day I came in jeans and a raggedy polo, and that was me at my fanciest. The pay was probably double of other people were receiving at their first jobs. The best part, though, was that I was given my own projects. All mine. My boss would lay down the specification for me and I would get to work. On the first day of work he tested me by having me extend an Azure file utility, AzureBlobUtil. I completed all the tasks within a couple of days. This tipped my boss off to give me a project that he thought I couldn’t possibly finish in the summer.

Being overwhelmed was a feeling I came to expect on a daily basis. My next project was to completely rewrite a web application using WCF and IronPython on the backend and javascript on the frontend. The web application was an abstraction over Microsoft’s High Performance Computing (HPC) job submission. Before this project, I had no experience in any of these four technologies, and now all of a sudden I was expected to use them in unison. I could have told my boss that I was uncomfortable programming in unfamiliar territory, but I like a challenge. I checked WCF books out from the library, read an ebook on IronPython, watched hours of javascript/jQuery training on pluralsight, and scoured the internet for tutorials. It was a slow process at first, but it was progress. By the end of the summer I had a product my boss could sell. He was so surprised by the accomplishment that he offered to have me work through the school year. I accepted. I still can’t believe people pay me to do what I love.

After New Years I was given another project, which dealt with combining the protocol HL7 with Java (Spring MVC). I had to design a REST API so that other developers could interact with my service. Akin to last time, I had no experience with any of these technologies, and so for the first few days I had to buckle down and learn. I even went to a Lansing for a health-care conference. How many college students can say that? And in this past month of May I have completed the API, wrote a web interface to the API, and completely restructured my work from the previous summer on Microsoft’s HPC technology using a work-flow I wanted to experiment with (node, grunt, require, etc). May was exhausting.

What does all this have to do with Chicago and Citadel? I’d like to think that I impressed the Citadel interviewer with my stories of being overwhelmed and overcoming those obstacles because I doubt my answers to some of the technical questions got me the internship. I answered a few questions wrong regarding pointers and references, private inheritance, and mutex. I also don’t know anything about finances and markets, so I am betting it was my perseverance that made me stand out over more qualified candidates.

Whatever my job will be at Citadel I’m sure I’ll do just fine. I doubt I’ll exclusively be given my own projects to work on, and instead be part of a team. The only team programming I have been exposed to has been for a databases class and Ants, so I’m excited to work with a team in a corporate environment. I’ve been told that in my team, we will be focusing on C++, SQL, Perl, and Sybase, which I know C++ and SQL. How fortunate! I won’t be completely overwhelmed.

In the end, I am excited to be spending ten weeks in Chicago working at Citadel. If it is half as educational as my time has been at Hiperlogic, I would consider it time well spent.

Comments: