Thursday, September 24, 2009

When you don't really want what you want

Lately, I've been getting lots of praise from our main Sr. Developer (Rod) in our office. He's not my boss or anything, but his opinion really matters in the office as he is the "right hand" of my real boss, Mike.

Anyway, hes been praising my skills and knowledge progess quite a bit in the last week or two. This has made me quite happy, as his confidence in me will definitely affect Mike's confidence in me.

That's not to say that Mike and Rod don't already have faith in my ability... but there's definitely certain types of work in the office that no one else gets assigned but them. This largely consists of work in our "Base Code". I've done some minor things in the base, but most of it is very "surfacy".

Well, lately I've been working on new functionality for our newest client, JPeterman, but which will be used for all clients. This functionality is Gift Wrap capabilities (i.e. a customer can now choose to pay a bit extra for gift wrap on individual items in the cart, and even write a message per item.) This has taken me much deeper into the Base Code than I've ever previously ventured, and while a bit overwhelming, I've actually have great success!

I'm very good at my job, but my strengths have not been in the .NET C-sharp (C#) code. That's where I'm weakest, but also what I've been most excited to learn since joining this company (it's one of the reasons I chose this company). I'm definitely the strongest in the office at the web-based User Interface (UI) portion, and also the strongest at the database stuff... but most of the "heavy" logic for our application rests in the middle-tier, which is where the Base Code .NET stuff rests. Hence, I'm extremely valuable to the company, but I'm not the answer for most of the larger, new functionality development because of my lack of skills with .NET.

Understanding that about my skills, and therefore my typical role in the office; it's been very challenging, and extremely personally rewarding to do this Gift Wrap thing. It started as intending to be a simple addition to the UI, taking advantage of a Functional Engine we already have called Kits. However, as I've programmed the UI, it became apparent that Kits had some very large insufficiencies. Thus, I began to get into the Base Code to tackle the problem... only to discover the large web of messes in Kits as a result.

So, I successfully navigated Kits, added functionality to them, fixed issues, noted weaknesses which we'll code around for now and tackle another day, and got the Gift Wrap working! Mike was happy, and Rod was impressed. It wasn't their original intent, but with each step they put a little more faith in me, and got positive results.

So, why the topic Title?...

Well, today I commented on one of the weaknesses of Kits (which has become apparent in the Gift Wrap Kit). Currently, we don't have Kit Part dependencies - for example, if you add a Gift Wrap Message kit part, but don't select a type of Gift Wrap (e.g. Wedding paper, or Christmas paper), we have no mechanism to say that the message is dependent on you selecting a wrapping paper.

So I commented on it and offered a suggestion... and Rod went to Mike with it and they came back and asked ME to take a shot at doing it all! This is a very good thing for my career!...

however, this new coding is very rewarding, but also very tiring. It's extremely challenging because while I'm now capable, but my skills aren't very strong.

Do I want this? Absolutely. But the surface part of me is already worn out. I'm extremely excited because I'm being challenged, but part of me likes the creative, fun, relatively easy-going element of simple web-UI coding.

It's like being a photographer, and really wanting to be self-employed, but not "really" wanting to take on running the business, and kinda just liking to take photos.

Anyway, I'm happy and blessed. I'm feeling rewarded. I'm just kinda dreading the actual work. :)

2 comments:

sfitz said...

So strange, most of your blog was written in another language...

But what I gathered was REALLY COOL! Good job David! I feel another dinner at Mastro's coming on. :-)

Wendy said...

Funny, even though it was in another language... I understood it all! Crazy, I guess 7+ years of hearing code speak has finally rubbed off. I am so very proud of you David. You will do great, and I will be here supporting you the whole way! You are a genius, so get used to this kind of stuff :P