Read, send, delete, and manage? Isn’t that basically everything I can do?
Uh yeah, coupons and savings and all… Thanks but, no thanks.
Let’s assume you sleep 8 hours a day, leaving 16 hours for you to enjoy life, hang out with your spouse, walk your dog and take your kids to the park.
I want to purchase half of that time.
I’m willing to give you some holidays and weekends, but at least 5 days a week and 8 hours per day, your time is spent on stuff I want you to do. Subtract out 3 weeks of vacation and I want to buy about 52% of your time.
How much will you charge me?
I’m not the first person to ask this question. I bring it up because a tech recruiter recently asked me to explain my salary requirements. What she was really asking was: “You are still in development and you are still in eCommerce, why are you asking for so much more than you did 17 years ago?”
Let me explain.
In 1999, while still in college, I accepted my first full-time developer position with JP Morgan Chase. We were a team of six, working on the website CreditCardsAtChase.com. It was a pretty simple JSP site who’s purpose was to educate banking customers on the differences between credit cards and market them. The technology was entry level (DHTML, baby!), the pace of work and rate of change were very reasonable (as you’d expect at a bank), and there was no need for on-call or late hours. As first jobs go, this one was pretty much perfect. I got to work with a small team and hone my code skills without overtime or unexpected timeline stresses.
Over the years, I moved up through the levels of developer inevitably graduating to the architect/manager split and choosing the latter. Each time I changed jobs a little more focus was required, and each position demanded a little more responsibility and accountability. But most importantly, the required time increased. More responsibilities means more deliverables, I had to fit more into a work week. This meant longer hours, and sometimes, the occasional Saturday.
When I started at WDPRO in 2005 we had no on-call expectations. At that time the importance of 24/7 eCommerce hadn’t gripped the Walt Disney company like it had with others. But that changed in 2009, I was on-call one week out of every 8. As our online application count increased, so did our on-call expectations. When I started at Chico’s as tech manager in 2012, I was on-call 24/7 and pulled into live-site issues 3+ times a week (for the first year or so). Due to late night batch jobs, the website most frequently broke at 3 o’clock in the morning.
My iPhone receives my work email and text messages from co-workers. It comes with me on vacation, it’s with me at the movie theater, when I’m having dinner with my family, it’s in the bathroom, and in the dentist’s office. Realistically, the only time I really unplug is when I’m out of cell phone service coverage, or in the shower.
At this point in my career, I’m rarely every “not at work”.
So, what would you charge for 99.9% of your time?
This blog post is the result of a combination of the original post here (February 2016), a very similar post on Linked-In, and the comments and conversation resulting from them.
For those of you who don’t know me personally, I’m a development manager. The most important part of my job is to interview and hire software developers. With mediocre software developers, you get mediocre software. No one wants mediocre software.
I like to believe I’ve become pretty good at identifying talent and weeding out less-than-desirable candidates. During my career I’ve interviewed many candidates, possibly in the hundreds, and built successful development teams from scratch more than a few times.
Last week I received an email from our HR recruiting manager about a young, fresh out-of-college candidate that we really didn’t have a position available for, but had an internal referral and really wanted the opportunity to talk to us.
Our resulting conversation, or rather, the fact that I’ve had this conversation at least 3 times in the past year, is why I decided to write this post.
Here was my feedback to the recruiting manager:
This was a nice conversation, he’s a pretty smart kid. As I expected, his answers were wordy and rehearsed, pretty standard for someone fresh out of school with only scholastic experience.
That being said, after a few softball tech questions I drilled into his knowledge a little bit and really uncovered how junior he is. When I asked him about Agile, he recited a Wikipedia definition that most likely would get him a “B” on a test, but he couldn’t give me any specific examples of how he and his team used it or why it was “better than waterfall for modern projects” (his words).
We spoke only briefly about his PHP experience (it was on his resume), but after he couldn’t tell me how to concatenate a string or name any of the methods for dealing with databases I assumed he’d fall short on design patterns and implementation standards outside of what was written in a book.
Education is important, but more important than what you know is how you’ve taken what you learned and used it in your career/life.
When I talk to programmers, especially young ones, I’m looking for eager curiosity and self-taught experience. You can’t get this in a college classroom, it’s a personality. You either have it or you don’t.
As I interview more and more of our millennial generation I am finding that interviews like this are becoming more common. And that concerns me greatly. Somewhere along the line, our formal educational system evolved into a series of rewards for memorization and regurgitation of facts and definitions. Practical application and self-paced (self-motivated) curiosity have been replaced with the promise of “good grades = good career”.
To add complexity to the issue, the interview process itself is flawed. I could write a book (probably not a very good one) on interview questions and techniques and still not scratch the surface of every candidate’s true potential or knowledge. The sad fact is, I have 60 minutes (at best) to try and extract the complex answer to a simple question: “Should I hire this person?” On top of that, I’m judging talent and aptitude, while trying to avoid knowledge. To do so, I find that more important than the base question is the follow up: When I ask “Are you familiar with design patterns”, which in this line of work should always result in a “yes”, I follow up with “what was the last pattern that you used? What did that application do? Why did you choose that pattern over the others?”
Everyone knows what a stone is. We can describe a stone and draw one, but only the great minds saw it as a building material and constructed great castles and cities. This is the skill I’m looking for, and it often hides itself well.
What I really wanted to say during the interview was “An interview and an exam do not share the same purpose, therefore they do not have the same answer. I’m not asking you about agile SDLC because I want to know if you know the definition. Frankly, I don’t care if you know the definition.” But I did not. Maybe I should have.
Many of the best programmers I’ve worked with have no formal college education, and many of them have no certifications of any kind, but they are still brilliant developers. Getting a degree in Computer Science does not make you a programmer any more than wearing feathers makes you a chicken.
Walk into your kitchen, unplug the toaster, take it apart and find out what makes it work. If this activity doesn’t interest you, maybe you should pick a field outside of engineering.
Today marks my final interaction with Comcast, the devil’s cable company! Well, maybe, on second thought I’m sure they’ll be calling me in 3 months with an unexplainable bill for some silly shit.
We’re moving out of Comcast’s service area, and all I needed to do was shut off my service. As you’d expect, my interaction with them was agonizingly long, and painfully over complicated.
But, at the end of my two chats and a phone call, I got the usual survey. Here was my input:
First agent did not understand my need, although it was explained in plain English. Second chat agent (after transfer) claimed “I don’t know why she transferred you to me… you need a different department”. Finally, after 20 minutes, I received the customer service phone number for the department I needed. This is my last interaction with you, I’m moving out of your serviced area, and I couldn’t be happier about it. In 20 years of home ownership, your company’s customer service is the absolute worst. Congratulations, you’re #1!
The wind is warm and thick with the scent of summer and grass. I feel guilty just for a fleeting moment while listening in on the private conversation between the front tire and the pavement below. The soft, subtle grinding of rubber on asphalt reminds me of mountain trips past.
I have no need for your creature comforts. There is no place, here, for your anti-lock brakes, cruise control, heated steering wheel, power seats, power… anything. I look down at the speedometer and feel free from the constraints of a shift indicator light, a fuel gauge, a tachometer… A seat belt. Today is not the day for touch-screen navigation or air-conditioned seats. Today is for riding. The angry growl of the exhaust, and the whipping of the wind is the only song offered me, and I accept it with a devilish grin.
I watch in eager anticipation as the breach between my headlight and rider in front grows, urging my right hand to twist ever further and unleash the beast lurking deep within the parallel twin beneath me. As I roll thumb-ward down, I feel her hands open and squeeze against my chest, pulling us together. The corner is approaching and my grin grows uncontrollably, slowly exposing my teeth to the air. I’m thankful for this helmet covering my expression, otherwise everyone within eyesight would likely giggle.
The bike leans itself over, further and further, as if demanded by some telepathic connection. Leaning and leaning, seeking the apex. My throttle hand remains steady, eyes fixed on the exit, and then a moment of weightlessness when the left peg touches the ground and that beautiful grind of steel on street rings out softly.
On the throttle, now! She stands back up and the front end begins to lighten as we continue to close the gap left by our leader, his tail light getting ever larger. Closing and closing before the bright reminder that another corner approaches.
Another run in with our cable company, another two and a half hours on the phone, and another complete failure in every conceivable way.
So three weeks ago I get a call on my cell phone with promises of “the X1 operating system, free HBO, free Starz, and upgraded internet speed” all for the low, low price of $130/month. Not only that, we’ll get to keep both of our DVR’s and no other changes in our service agreement. I thought it sounded too good to be true. Turns out, as usual, I was right. Honestly, this one is on me. I knew better and every time, every damned time, I make a change to my cable service, I get screwed. But, I blindly believed what I was being told and signed up.
Two weeks goes by and no equipment, no email, no phone call. I even logged into my credit report to ensure I didn’t get taken by some scam artist who promised me he was Comcast only to talk me out of my personal information. Thinking back on this, maybe an encounter with someone trying to steal my identity would be less painful.
The website never seems to have agent chat available anymore, so I did what I always regret and called Comcast customer service.
After being half-helped and hung up on, twice, and holding for a total of at least 45 minutes, I got someone who had an IQ higher than that of a cucumber (only just) and we started the dance of agony that is Comcast’s verification process. I beat her to the punch: “my name is ——, my address is —–, and the last 4 digits of my social are —–. Can we please move forward?!”
I explained that I agreed to a new 2-year contract in exchange for the HBO, Starz, DVR boxes, wireless internet, blah, blah… Nothing had arrived, no one had contacted me, blah, blah, etc.
The agent pulls up my account information and explains that although the order was “put in but never shipped”. Thank you, captain obvious. He went on to explain that we were not, in fact, receiving two DVR’s, we were getting one X1 DVR that would record up to 5 shows at the same time, and a “companion box” that would be able to play those shows in any other room (wherever the companion box was). I was disappointed and asked to be contacted by a manager and to put the whole order on hold until I could get answers.
Fast forward three days, and the fucking package with my new equipment shows up at my door step. So much for the “hold”. Add to this that the DVR service stopped working in every room of our house, so holding off on installing the new equipment was basically pointless.
So the hell with it, I’ll eat the 2 year agreement and stay with the X1 companion box thing… I can’t imagine we’ll record more than 5 shows simultaneously.
Let’s plug in this stuff and get to it. Internet modem fires right up, living room box is SLOW to start up and load working channels, but eventually it gets working.
Last step was to instal the bedroom “companion box” that had caused all the kerfuffle. “Please enter your account number and phone number”, I click continue and… “This box needs to be added to your account. Please call 888 blah blah blah” FUCK MY LIFE.
3 customer service agents, one hang up, 54 minutes on hold. I was asked to “verify my account information” 4 times. FOUR FUCKING TIMES for a series of people to send multiple “reset signals sent to box”, and “can you please read me the error code again?”. And let’s not forget: “Sir, Starz isn’t included in your package, I’m not sure why the agent told you that it was”. “Of course not” I replied. “Of course not…”
After all of that, I’m awarded with nothing. Box is still broken, and a technician has to call me tomorrow between 5 and 9 PM. $100 says I get no call. I wonder how many times I’ll have to validate my information, unplug and re plug-in my box and receive “reset signals” before I get transferred to yet another asshat who can’t help me after I decide I’ve waited long enough and call the god damned 800 number. Be sure to tune in the next time I get my Xfinity internet service restored so I can blog about how pissed off I am about the 40 year contract they forced me into.
Another day, another hobby… As most avid readers know, I’m a bit of a craft beer nut. Whenever we travel, we try to fit in as many local breweries as we can, and I’ve been known to frequently visit Tampa, Fort Lauderdale, Sarasota, Dunedin, Punta Gorda and other “local” (read: less than 3 hour drive) locals to hit Florida breweries.
But you can’t travel everywhere, and you can’t try every beer. If only I could ship Florida beer in exchange for local treasures in other cities and states!!
So far, I’ve traded a total of 5 times. Thanks to BEX, I’ve had the pleasure of dealing with Chris and Tim in south California, Mike in New Jersey, E. in Michigan, and Ross in Louisiana. For local favorites like Funky Buddha, Cigar City, JDubs, and Big Top I’ve received over a dozen different local favorites from 4 different cities for just the cost of shipping a box!
In the spirit of furthering the cause, I decided to share some of my beer exchanging tips. (Additionally, there is a fantastic document on how to pack and ship beer here.)
1. You are not shipping beer. Shipping alcohol requires an over-21 signature on the sending and receiving end. And it’s generally a lot more expensive. On the outside of the box, or if they ask, write/say “glass candles” or “liquid yeast samples” (not technically a lie).
2. Good advice for many activities, Wrap it up! Be sure to wrap each can/bottle individually and then all together. Remember, if one bottle breaks and leaks, most shipping companies will throw out the whole box. So one ziplock type bag per can/bottle is a good idea.
3. Using rubber bands instead of taping the bubble wrap is handy for the receiver, because he/she can use the bubble wrap again!
5. Beer traders are awesome people. Include a few extras! I always include a few additional Florida beers in the box, and a nice note for that “personal touch”.
So, get out there and score some local beer, and then sign up on TheBeerExchange (it’s FREE).
Be sure to look me up when you get there, as expected I’m “KeyboardDevil”. Also, be sure to drop my new friends Chris, Tim, Mike, E. ,and Ross a line. They’re great traders and will take good care of you.
Forget about waiting on the big distributors, let’s make local beer accessible to everyone right now!
When the last big retail hack took place, ironically I think it was Target, I signed up for a Google Wallet card so I could put a layer of protection between my checking account and would-be thieves. So far the card has been pretty handy. You can add funds directly from your bank account with no fee, and even transfer money to friends via email. Pretty snazzy!
Earlier tonight I tried paying for my beers at the local World of Beer here in South Florida only to be declined. Not that this was a new development, my Google card gets declined all the time. So, I pick up my phone, open the Wallet app, and move over some funds.
But when I pulled up my transaction history, there was a $140.02 charge (the exact amount in my account, down to the penny), posted today, from a Target in Kissimmee, FL (home of Disney World, and surrounding shitty neighborhoods), which is 150 miles from here.
So, someone managed to get their hands on my Google account information. Looks like my paranoia paid off! Anyway, time to call the Google Wallet support line at 855-4-Wallet (how professional!) and report my issue.
And, here’s where the Google monster falls down. Had my bank identified a faulty transaction (which they have a few times in the past) there would be an immediate lock-down on my account, an investigation, and a full refund, all before I hung up the phone. But, that’s not what happened.
“Sir, I’m sending you an email with a link to our dispute form, which I encourage you to fill out right away.”
And what about my account? You know, the one connected to my checking account. Was it closed and locked? Nope. Disabled, or suspended? Nope. Customer service lady (who was very nice) told me she couldn’t do it. I had to do that from the app, on my own. Thanks Google!
Definition: 3 great cartoon shows followed by 6 hours of live-action shit jokes and random screaming we’ve told you is funny separated by commercials about nothing written by 6 year-old mental patients.
Like many others in the non-NYC area, I skipped over an article on CNN talking about cat-calling and street harassment aimed at women in the city. Like much of the rest of the US, my “left vs right” internal argument falls somewhere in the middle but I still managed to imagine the thinnest of liberalized arguments making a few uneducated, third-world-transplant construction workers generalized as everyday Americans. “Oh, stop fucking crying” I thought.
Then I watched this video, and I was mind-blown.
After you get past the stupid shit people are saying, and even the mind-boggling rate at which it is being said, there still remains a creepy and obvious threatening overtone. This is most apparent when watching her eyes as a barely-controlled panic sets in, darting from side to side and back to the camera in the man’s backpack for some kind of reassurance that she is safe from pending attack.
Although it is clear from the video that this approach is likely not resulting in “hook-up’s”, this has become an issue and reportedly is getting worse. This can only lead me to believe that it is either working (these me are actually getting dates with this behavior), or the power-shift is so addictive, men are willing to take the chance of being pepper-sprayed to continue it. Either way, the story is compelling (albeit, disgusting) from a psychological point of view.
Another hour and a half out of my life, wasted on the ever-sucking ass-hats of Comcast. Due to the seemingly reasonable rational of being completely exhausted of paying over $240 a month for cable that I barely use, I contacted Comcast-Xfinity via web chat. I should mention that this is my preferred method of contacting them as I frequently feel the need to stomp away angrily and scream obscenities back at the agent who is trying to “help” me. My original purpose was to remove all of my premium channels and stick with the basic cable line-up. What I didn’t realize was that the “basic cable” line-up is far from what you’d expect.
Anyway, the channel line-up options are in what basically amounts to three flavors:
As you’d expect, the price difference between the first and second options is massive while between the second and third is actually pretty reasonable (once you get past the ass-raping of the pricing).
Now, if you add the home phone service, which even my grandmother doesn’t use, you’ll “save” even more. The chat agent mentioned to me, more than once, that I had the option of just ‘not plugging in a phone’ even though I was receiving (and paying for) the service.
Anyway, at the end of my “experience” with the chat agent, I was asked (as I usually am) to take a “quick survey”. If you’ve read my other Comcast blogs, you know I can’t resist. Here is the actual text of the “comments” at the end of the survey:
Firstly, I’m convinced that no one reads these, but whatever maybe I’ll feel better after I type it out. The cable channel combinations are obviously set up to suck every last penny out of your customers with no concern for offering packages that people actually WANT. What the hell is the tennis channel? SERIOUSLY? I had 200 channels I never watched before the chat, and now I have some 140 channels I’ll never watch just to save a few dollars while keeping the ability to watch the few shows I actually DO want. And, that was no small feat, only accomplished by spending the last 1 and a half hours on a chat with your basically useless agent. This is the last time I’ll be changing my service. Once I’m used to using services like Hulu and Netflix, I’m leaving for good. I hope, truly and faithfully, that Comcast goes out of business completely. You know what? I DO feel better now. 🙂
I’ve had a Craftsman 3/8″ torque wrench for about a year and a half, maybe two years. It’s one of my favorite tools in the garage. In fact, take a look at the photo on the left and you’ll see me using it on my bike with a great big smile. Every semi-serious shade-tree mechanic needs a good torque wrench, and generally they last forever. And that’s a good thing, because you’ll rarely find a good one for less than $100.
I buy Craftsman tools because Sears stands behind its products (well, usually). Craftsman hand tools have a lifetime warranty, and I’ve personally returned more than a few. Suspension work frequently results in broken sockets and ratchets and Sears has always been great about returning them. But not all tools are created equally, and some of them, like torque wrenches, are only covered for a limited time.
Last week, I lent the wrench to a friend who managed (somehow) to break it. The grip became loose and the wrench’s torque set was stuck somewhere around 15 ft lbs. Now, I know that Sears only guarantees wrenches like this one for a year, but I figured what the hell and brought it down to my local store. I’ve read mixed reviews lately about returns, but my experience was nothing short of awesome. While standing in line, a sales associate and a guy in plain clothes approached me and asked if they could help.
When I explained the situation, the sales associate told me that the wrench was no longer covered. It was clear he recognized the older model and knew its age. I thanked them and said, “well, see if you can find a trash can to throw this into, then?” and handed over the wrench. That’s when the plain clothes guy stepped in and said “let’s see if we can figure out when you bought this wrench” and smiled at me. We walked to the nearest computer and he looked up the part number, and then asked me if I was a Craftsman Club member, which I am.
He never asked for my name, phone number, address or any other identifying information. He said to me, “so you bought this no more than a year ago”, without even waiting for my reply he looked at the sales associate and said, “swap him out, and make sure this one gets labeled as a return”. On my way out of the store, I stopped and shook the hand of the plain clothes man (it was clear now that he was a manager or supervisor of some kind). He smiled at me and said, “thanks for coming in, it was my pleasure”.
The price tag on the wrench was $69.99, and for a one-time investment, Craftsman has created a customer for life. I’ve spent thousands on tools, boxes, and benches over the years, and when Sears had the opportunity to do customer service right, they nailed it. Someone from Sears seriously needs to call someone at Kay’s.
Over the course of automotive history we’ve encountered some pretty creative technology including vacuum line powered filp-up headlights, dash-mounted 8-track players, and dozens of other terrible ideas. About 4 years ago, I purchased my most technologically advanced car yet. It’s a 2009 Nissan 370Z Touring with touch-screen satellite navigation, MP3 player that reads a Compact Flash card, power everything, and computer controlled vehicle dynamic stability control. In ’09 it was a technological marvel. Now it’s 2014 and already those techno-toys are becoming dated. Compact Flash has lost the portable media war, the iPhone 4 connector is useless, and my nav system relies on maps created five years ago.
If you’re a gear head like many of my readers, you probably have at least one “one day I’ll own one” car. You probably have three of them actually. I’ve been chasing the 1963 split-window Corvette and a late 60’s fastback Camaro for over a decade, but I sincerely doubt my 2009 370Z will end up on some dude’s auto wish list. In ten years, the power seats won’t work, the dynamic stability control will be replaced with cheaper, faster computer solutions, and you won’t even be able to find Compact Flash disks on ebay’s collector’s forum. Seems unlikely that Year One will start cranking out power window modules and hatchback struts for 2000’s Nissans, don’t you think? But when we consider the 40 year old technology that powers a 1968 Chevrolet… Well, people have been getting in line to order replacements since before I was born. Why? Because iron intake manifolds don’t plug into a USB port. If classic car collectors and parts manufacturers have taught us anything it is “the fewer moving parts the better”. The simple truth is: If you have to plug it in, power it up, or push more than one button, it’s probably already too complex.
So, this is usually the part of the blog post when the writer starts complaining about disappearing standard transmissions, the discontinued use of fuel-burning only engines to create super cars, and the great “death of the American muscle car”. Sorry to disappoint, but I’m not playing that card. Although I am unhappy about the majority of those topics, I actually believe we’re kind of lucky to be involved in the next evolutionary step of automobile technology. 30 years from now, new drivers will have no idea where their audio systems came from, how they work, or just how we got by with radios not connected to the global wireless network so you can access your music from anywhere (that is going to be freaking awesome). They’ll have no understanding of crankshafts, pistons, valves, turbos, or direct ignition systems once they’re replaced by the Apple iCombust (probably already patented).
But we will have that knowledge. Having lived through the grey area between evolution’s footprints, we will have the gift of perspective and respect that the next generation can never appreciate.
Wow, I just realized how much I sound like every gear head grandfather when I read that last sentence.