jack-of-spaces

Jack of All Trades, Master of Some

I noticed a pattern in my life early on.

I tended to go deep into a topic in a very short amount of time. It never mattered what the topic was just that I had some interest in it. If I was interested in it I was all in on the spot. This is true even now.  But my life was never lived with a plan – just an interest in some topic that led to another interest.

I had a father that I remember doing everything himself. I always saw him tinkering on something. He didn’t spend much time glued to the TV. And he always had the tools or books or whatever he needed to work with that topic. It seemed that he knew everything related to a given topic. To him these topics spanned construction, all sorts of fishing, almost every war, air planes, plants, and chemistry.

By day he had a PhD in plant sciences and ran a company running various experiments to make plants bigger, better, healthier, pest and disease resistant, while growing faster.  He did a lot of research trying to make a difference in the agricultural world. He flew all over the place (often times in his own plane with him as the pilot) working with people from all over the world.  I like to tell a story about him contributing the size, flavor, and seed-less-ness of grapes as you now know them. When I was a kid grapes were tiny blah seeded things.  Dad loved grapes and worked to make them better.

One of his knacks that fascinated me was his recall.  Someone might ask him a question about a report he wrote and he could tell you all about what he wrote 15 years ago up in the storage at the office in a box buried 3 rows back on the bottom.  This binder. That page. This paragraph.  Yep – there it is. How did he do that? This led to him eventually being a very talented “professional witness” in agricultural legal trials.

I am not sure my recall capabilities are quite as good as his. I forget my birthday for Christ’s sake! But I have always been able to skim through magazines and books cover to cover. I never left the information with full recall of a topic but I could always leave with the vocabulary in hand and enough information to be dangerous.

Having seen my dad do anything he set out too, I have always felt empowered to dive in and just get it done. I had built an entire “club house” around the age of 12.  And by club house I mean 8’x8’x14’ building complete with sleeping loft, door, windows, wired for plugs and lighting (plugged into my mom’s house – she hated that) where I spent a lot of time! My mom had one of my Dad’s come inspect it to ensure it was safe. He said it was “Up to code! How did he do that?”

woodI had family issues growing up which caused me to be an interesting kid. By the second grade I was already being kicked out of school.  My mom sent me to live with my dad when I was 7 – she couldn’t handle me. I don’t know how my dad managed to raise me without seeing the inside of a jail! Among a plethora of other issues I had eventually found a way to get kicked out of high school a couple months into my 10th grade year. Out of the school district that is. I was forced into home school.

Dad took me to work with him every day at 7 and home again at 6. I had to sit in the library and do nothing but school. No talking. No help. But in my sophomore year I had jumped a head in school. By the end of my junior year I was done with high school. My senior year was a blast. I had two PE classes, 2 wood shops, 1 metal shop, and 1 auto shop (and a couple half semester things I couldn’t take until my senior year).  With access to all these great facilities I was building swords, cross bows, knives – thankfully my shop teachers got to know me well and were ok with this crazy kid.  But it was clear that my parents were done being responsible for me. Where too now?

Off to the Army I go. Like most of my life to this point I had bumbled from one interest to the next. Why not do that in the Military? I tested very high and was told I could have any job I wanted. They sold me on 11X-ray. I would get to shoot and blow things up. Sign me up. They even “gave me” an airborne contract. Don’t trust recruiters – they are there to fill quotas.  11X-ray is an open ended infantry contract. Grunt. Oops!

Duped into a life as a worker bee I went through basic and AIT without much problem. Earned my PFC quickly. Showed an aptitude to lead. Off to airborne school. Did well enough. Got recruited into the RIP program – ranger indoctrination program (now called RASP – ranger assessment and selection program). Got through that. Showed up to ranger battalion where they looked at me and immediately decided I could carry heavy shit – weapon’s squad for me! It was a fun period in my life. I have never regretted it in the least. I learned that while I can suffer through anything you might throw at me. I also learned that I needed to work with my head not my back.

Once I got out of the Military I tried “work”. I attempted to hang wire for an industrial electrician. Having just gotten out of a world where shit rolls downhill I quickly realized that I was not going to cut it in a trade where someone that is happy doing the same thing every day for 40 years is telling me how to do something in-efficient – back to school.  ITT Tech! I started in a CAD program and had my first real introduction to computers. I had touched them a couple times in previous years but never in any way that sparked my true interest. Now I was sitting in front of a computer every day.

Talk about a never ending stream of learning! I loved the world of computers. Other than learning command line access to CAD programs, how to hand draw blue prints (right up my alley), and draw in Auto CAD, I was learning daily about networking, computer internals, and how to make this thing go faster. I quickly started to collect dead computer chassis and bring them back to life. I got a job as an in store tech support guy for HP where I stood in BestBuy and Fry’s to talk to customers as an HP rep. Every day I learned something I didn’t know I was missing. Someone showed me HTML in notepad. Another guy showed me javascript. I had friends that could “fdisk” their computers – what’s that? Quickly I found myself in a part-time network admin gig (not that I knew how to do that job yet) and started to figure things out. Each day getting further away from enjoying sitting in a class learning as slow as the teacher would trickle information to us.

My first networking gig was with a company that built shutters which they managed on a magnetic white board. This was insanely inefficient to me. Someone mentioned I should look into making a database to manage that. What’s that? OK. But entering data directly into a database wasn’t going to work. Build a web site. OK. We need servers to run this stuff. OK. A great first playground for me.

All the while going to school where I had two teachers that I interacted with quite a bit. One of them hated that I was so all over the place. I built video games in 3d studio max and some world building program (when we were just supposed to model something simple). Or I would go deep into photoshop.  You name it – if the assignment was simple I would go over the top in five different directions. This guy pulled me out of the class (in the middle of class) to go for a walk.  We walked around the parking lot. He asked me “what do you want to do when you grow up?” I replied that I had no idea I liked a lot of things. He told me that I would eventually have to focus on being really good at just one thing to make it in this world.  A “Jack of all trades, master of none, had no place in this world”. This didn’t sit well with me as I tended to be very scattered and really enjoyed doing all sorts of things – not just one thing.

The other teacher pulled me aside in a similar fashion. He saw that I was tinkering in the web world already and suggested that I should go learn a “real programming language”. His suggestion was that I learn Visual Basic. I giggle at this now of course. I bought a book on PERL (oops).  He was a GIS and big data guy before the term big data existed. He saw where my mind was and steered me in the right direction. I got my associates degree at ITT in CAD with a 3.8 but didn’t complete my bachelor’s degree. I didn’t think I needed school anymore – LET’s DO THIS!

pat-testingThis pattern of constantly bumping into what I didn’t know pushed me to learn more and more. I almost always had three jobs running at one time. Tech support, networking, cable pulling, LAN configuration, phone lines, IVR, VOIP, server builds, building out data centers.  I was very hardware oriented for the first couple of years. At some point I bridged over to building data driven dynamic web sites.  I was doing AJAX before the term existed. Starting with simple commerce web sites plus managing the data center. Then social networking. Then big commerce. Then big systems peeked my interest in general.

To this day there is nothing that I enjoy more than cracking open a new topic. From rebuilding a car, to fabricating a green house, to building poll barns, wiring up IoT widgets to the cloud, building a pig farm, to building big distributed systems.  I have made a career of learning how to learn.  A career of being a technology generalist. A jack of all trades, **master of some**.

Which leads me to why I am writing this book and donating my time to the Developer Springboard.  While my path to where I am now was very unplanned and fragmented, yours certainly doesn’t have to be. I have worked at almost all levels of the technology industry. There are so many soft skills that you can learn from my experiences that will immediately be beneficial to you going down the right path. I am very passionate about sharing this with you and learning what I don’t yet know in this career management space.

My wife is now cringing at my new hobby for which I have to go deep.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More

Computer History Museum

Three Career Mistakes I Made As a Programmer

Remember the old days, when you would go to work out of college and stay at the same company for forty years? They’d give you a watch and a pension, and you would be set for the rest of your life.

Those days are long gone.

And yet, somehow I never got that memo. I worked at the same company out of college for almost 14 years. And it was a mistake to do so.

But before I tell you why, let me give you a little background. I was a star student, straight As through high school, full scholarship to a good school studying electrical engineering. I graduated but never loved electrical; my heart was in developing software.

So out of college I landed a job at a good tech company in the scientific and engineering area. Which brings me to my first mistake:

web11. The Blinders

I started out my work on a C++ project. Pretty cool actually, a utility app that internal product groups plugged into to get their hardware to show up in it.

I learned a good deal on this project, but I put the blinders on technology-wise. I wasn’t keeping track of what was going on in the world around me. This was from 2001 to 2006 or so, when the web was continuing to evolve at a break-neck pace.

“Web programming?” I scoffed. “That’s not even real programming. This hardcore C++ embedded and desktop application programming is the real stuff.” Ah, foolish Devin. How wrong you were.

While I was cutting my teeth on interesting problems, I was also getting very narrow in my skillset: desktop app development in C++ using antiquated UI technologies like Win32/GDI and MFC.

The takeaway here is to make sure you are continually learning and keeping track of what is happening in the world outside your office and even your company. Work on side projects to play around with new technologies. Read blogs and if you are a luddite like me force yourself to buy the new technology gadget at least once every two years.

2. Dinosaur Syndrome

I worked on my first project for over 6 years. And I finished my time at the company with a second project that I labored on for over 7 years. Yes, a combined total of over 13 years at one company essentially only working on two things.

I thought I was loyal to the company and that the company would be loyal to me. But when the rubber met the road, the company wasn’t willing to budge an inch to show me that they cared that I had invested so much of my time and thought with them.

I took it personally at first but not anymore. The company had grown in my time there, quadrupling in size to almost 10,000 people. When you get that big you are not a close-knit group; you’re a medium to large sized big-corp. The little guy doesn’t matter anymore, nor do you have to act like he does. Should you? Yes, but that’s another blog post.

Bottom line is: don’t work at a company for 13 years. Unless by the end of it you are the CTO or CEO and make millions of dollars per year, get out of there after two to four years, especially for your first company. Level up to at least Staff Software Engineer and jump ship. Try a small company if you’ve been at a large one, or vice-versa. You are in the growing and gaining experience phase in your career, so think diversity of experience over going super deep and long at one place and with one technology.

I wished that someone had told me this when I was three years into my first job, the one I remained at for far too long.

3. Perception Problems

I used to brag that other companies had politics but that the company I worked at was a pure meritocracy. I was serious and had been told that, and I believed it for about ten years.

Then I started to realize it was not a pure meritocracy, and that politics did exist (duh). I had not played the game or been wise on how to make sure that I was working on projects with good visibility, doing things that senior management saw and rewarded. Instead, I thought that if I just kept doing a good job they would realize the value of it and recompense me.

Meanwhile, smarter coworkers were constantly getting the bosses’ attention and demoing little things to them. Even things that I and others had worked to make happen but didn’t think to brag about and show demos of. Hey, it’s a team thing right? Right and wrong. There’s nothing wrong with showing what you’ve done, and we as programmers tend to do it less than we should.

clearmeasureworkAlso, I realized after some time that I had gained a perception as someone who put in his hours but didn’t go above and beyond. I was late in noticing this and worked hard to show that I could make a powerful impact on the company, bringing new development methodologies that were proven in the software craft but that we had ignored. Too late: the company tech culture was built to look skeptically at outside ideas, even proven ones, and people like me who pushed them were dinged for not being good culture fits.

Perception influences reality. If that perception is objectively accurate (aka “true”), then that is a good thing. But when the perception is false, erroneous, it leads to bad decisions and actions. Be aware, be mindful, of how you are perceived at the company, by your supervisors, by your coworkers. Not to suck up or something like that, but to understand if a false perception is being built up that you need to counter, or a true but critical one is developing that you can change about yourself.

New Trails

I left that job and worked at a startup developing their cross-platform mobile app using Xamarin. Then I left that job and work at a custom engineering company where I’ve implemented a Web API backend for an iPad app and web client, using NServiceBus, SignalR, CQRS, TDD, and many other good practices and technologies.

I’ve learned more in a year than I did in the last five years at my old job.

Avoid my mistakes: be nimble, externally aware and self-aware, and bypass the long slog that I went through to get to a good place in your knowledge and career.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More