Tuesday, September 17, 2013

just trying to save this somewhere, feel free to look at it and comment or tear it apart

posting my responses to developerauction.com 's suggestions for the about me section. rewriting it without listening to their advice.

### What projects have you worked on?

Developed risk management software which integrated data from multiple trading platform APIs, as well as multiple clearing firms, and proprietary data sources. Project included databases, Windows GUI programming, COM/OLE. Developed tool to check compliance related queries on a day to day basis and log and back up all our trade/order data.
In the past I developed a number of websites primarily using Drupal and some custom modules.

### Any technical challenges you've overcome?

I know that I have had some complicated technical issues, but I am not sure what level of detail conveys that. Debugging multi-threaded code can be challenging. Some times the most challenging part of shipping a new version is the realization that the MSDN documentation is not correct, at least with a given codebase and included libraries. Sometimes digging through layers of include files to realize why something isn't quite right is the challenge. A database redesign can be challenging when you are supposed to keep things functional while simultaneously not losing any data. Yeah, I don't know how to specifically answer this.... COM/OLE variants and IDispatches can be a terrible way to spend your day, pointers can be evil, or your best friend, not every library behaves as it should, but rolling your own takes longer than you expect, in the real world just because you've solved a problem once does not mean it is solved forever... and I'm rambling.

I guess two specific things come to mind after some thought:
1) converting an old application from SQL server 2000 to 2008 which involved refactoring an old application by writing an abstraction layer for our existing dblibrary code to match internal standards and then using that layer as a black box and upgrading to ODBC. The biggest complication arose from a conversion error from one of the ODBC types to a internally used type that corrupted the stack in a specific case of the error handling callback function, which in turn caused our logging function to halt unexpectedly due to a '...' argument. This was a challenge to track down since logging broke and the error was in a callback function and the error only occurred with one datatype (want to say it was 64bit unique IDs, but happened a couple years ago).
2) There was an error in our company's base array class (based off old IBM array if I remember correctly), but since the class was widely used I had to go through all of my code with a fine toothed comb and be 100% sure the error wasn't caused by my code before reporting it to my boss. So I located the precise use case that was generating the error and wrote a short sample program to demonstrate the error without extraneous information, and sent it back to my boss with where I thought the error was in the library code.

### Do you have any personal projects?

Currently working on a personal chrome browser extension to streamline my own internet experience.

I also have a website I'd like to start, but it is music industry related and Id rather not get sued into oblivion so I have hesitated to pursue it.
I've been doing some of the projecteuler.net puzzles, but Im only about 20 into them, and can not say it is a huge priority for me.

### What's your philosophy?
This question I believe is tailored towards the managerial applicants, however I have worked under managers, and would like to think that gives me some perspective. As one of my former managers put it, 'you are a pretty little snowflake, just like everybody else.' If everybody does not feel valued, they will feel marginalized, thus everybody needs to be challenged while receiving the support they need to accomplish their tasks and goals.

Management is hard, the same way that life is hard. You need to make decisions with imperfect information, and you need to manage people who feel more highly of themselves than is warranted, and telling them otherwise is bound to damage morale. Everybody needs their own level of flexibility based on their situation, but nobody on a team can feel that they are excluded from receiving the same, however everybody needs different constraints based on role and situation.

My last job provided me the opportunity to observe my manager trying to deal with doublespeak from 'The Boss' while needing to manage a diverse set of personalities under some pretty tight constraints, so I've developed appreciation for the difficulty. However, I was no longer willing to work in a place where doublespeak from over my head was dictating my actions, because it was too frustrating of an environment to work in.

No comments: