Saturday, June 16, 2012

My Journey: Becoming who I want to be

I really hope you listen to the music in this post.

As anyone who follows me on twitter is well aware, I've been applying to jobs recently. This is due to the fact that, come August 10, my job won't exist anymore as my company did not win our bid for the government contract that we currently work. I've waited until recently to do this because I wanted to get my degree wrapped up and I wanted to wait until we were closer to that last day. I wanted to wait until that last day because I don't want to leave my company high and dry without me, at least not for too long.

You see, the word "Senior" is part of my job title, and it's not because there are a bunch of "Normal' or "Junior" of my position who work below me. It's because I'm the only person with my job title. If I left there would literally be nobody to do the things that I do. There used to be at least three people who did the work that I currently do. My company also used to do Medicare work for more states, so I believe that the job necessitated that many people. However, the number of states that we work went down, and 2 of the people in my position moved on to another company in our umbrella that does private insurance. Then, the last person decided to move on as well.

When I was hired I was to replace the only person still working this job. I also only had three weeks to get up to speed. Fun fact: I had never worked with databases, SQL, or MS Access a day in my life before my first day here. Those three weeks were pretty brutal. A bunch of medical terminology was flying past my head and my predecessor/trainer tried to make sure I was acquainted with all the regular reports and analyses that I would have to perform. We did a pretty good job of it, but I was definitely not fully prepared once I was handed the reins. There was still much that I would have to teach myself, and I did.

Just a couple months into working here I was already a far more capable SQL (specifically SAS/SQL) programmer than any of my predecessors. I know this because I've had to work with all the code that they left behind. Since that's the primary method by which I do my work, that's pretty important. In December a recurring data request came up. I called one of the predecessors to find out where the code that they used to do it was and when I ran it...well, it ran for five hours and then crashed. The error produced seemed to indicate that the database server had run out of memory with which to process the request, a terrible sign indeed (since databases servers are designed to work with massive amounts of data).

So I dug into the code. The code was creating several different (temporary) tables and then writing them each to files at the end. (I would then write those files to a CD and send it off) I changed the code so that it would create one table, write it to a file, and then drop the table to free up the memory for the rest. Instead of getting all the data together and then writing it to files, I'd do it one at a time. Run again, still crash.

This time I decided to really look at the code of each query to see what it was doing. The program begins by importing some tables that will be used in the processing of all the data. Then it loads data from our tables and joins the information together. The tables that were imported at the beginning had claim information, and they were being joined with our data not on the claim number, as is typical, but on the procedure code. The problem is that procedure codes are by no means unique for each record, so this was creating a tremendous amount of duplicate information. Then the code would use the GROUP statement (by grouping on all the variables) to remove duplicates instead of the DISTINCT modifier, as one should.

I had to rewrite all these queries so that they weren't horrible. I started by writing a new query to figure out what all the procedure codes in the loaded tables were and then added a condition to the original queries that states "Only pull claims that have one of these procedure codes". Then I got rid of the imported tables completely; they weren't necessary anymore. Then I touched some things up, removed the check for duplicates since it was no longer needed, fixed syntax problems, and then I ran it. Instead of the 5 hour failure that it was before, it was a 5 minute success.

That's just one story. I'll spare you the story of the code that I literally had to print out and mark up with a pen so that I could figure out what it did and then rewrote to be at 20%-25% of its original length.

I guess this is all really about my resume, which is really weird. I just received my Masters, which took me 4 years to get, but I've been working for a year already, in a "Senior" position? It seems like all of that would raise a ton of red flags for someone looking at my resume, not to mention the two typos that I keep beating myself up over. I hate all of this because I know--I KNOW--that even though I have skill gaps and only have one year of job experience I could pick up the skills that I need very quickly on the job, and that once I had I'd be an incredibly valuable employee. This is something that I would love to be able to communicate in my cover letter but doing so would require acknowledging and pointing out a weakness that I have, which seems like a bad idea.

Over the past week I've applied at tons of places. I currently have 25 outstanding applications (those which I don't know the status of) at many different companies. Some of them I'm definitely qualified for. Some of them are a bit of stretch. I really hope that I hear back from some of these. I'm ready to move on to a more stable position in my life. Earlier, I felt stable but I still didn't have my degree, which was keeping me from feeling at peace with myself. There was still so much guilt wrapped up in that. Then I learn that I'm losing my job but now I have my degree. Fortunately, people don't really tend to lose degrees so once I get a stable job I'll feel secure.

I'm tired of being lazy and making the easy/only remaining choice. I'm done with that. So much of my life has been dictated by that. A couple months ago I was notified of a position at our parent company that my skill set applied to and I probably could have gotten easily. But I'm just not interested in working in medical insurance anymore. I could have taken it, but I decided to go the hard way and that I would try to get a position at a company that I truly wanted to work at.When we play games, we're usually playing a hero. Heroes aren't the people who make the easy decision. Heroes aren't lazy. Heroes don't wait until the last minute. Damn it, I want to be a hero. I don't necessarily want to be a hero to the world or even to a large number of people, but I want to be able to see myself as a hero. I want to be one to the children that I one day hope to have. I want to be able to look at myself and my actions and be proud. It's time for me to become the person that I want to be.

I'm going to keep applying to jobs until I get one. I'm going to keep improving on my resumes and cover letters. I'm going to start looking into filling those skill gaps that I have. I'm going to do every thing that I can to get the best damn job that I can. This way I can't look at myself and beat myself up for not trying hard enough.

I've added a new link to the top of my page. It goes to an anonymized version of my resume. I encourage you to take a look at it. If there's somewhere you think I should apply--even where you work--I am enthusiastically accepting all recommendations. My email is on it if you want to email me. You can also pass it along if you want.

Friends, if there's something that you want to accomplish, I heartily encourage that you go for it. There is not one of you that I don't wholeheartedly believe in. You may not think much of yourself, but I do. Each and every one of you has skills for which I envy you. Go for it. Why not? You deserve only the best.