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. 🙂
In what I can only guess is an attempt to continue the stereotype that Americans are either too stupid, too removed from reality or both, Infinity has created this TV commercial featuring what, by all accounts, can only be described as “that guy who is the cause of every traffic accident, ever”.
The commercial shouldn’t include the disclaimer “professional on a closed course“, maybe more like “fucking idiot trying to kill everyone else on the road“.
Touting this car’s ability stop you from running soccer-mom-vans full of sticky-fingered children into a roadside creek is insulting and irresponsible. Congratulations Infinity, the only one-up to including anti-dumb ass technology in your cars is this commercial showing it off with captain-crash-a-lot.
In 2000 I bought an MR2 Spyder. I’ve written about it so frequently because it is probably the most reliable car I’ve owned. Especially when you consider that I drove it to work, 100 miles every day, and auto crossed on the weekends for over 130,000 miles. The only thing that ever broke on that car was the plastic thing that holds the hood prop when it is closed. I literally raced that little economy engine every weekend, at red line. I changed the oil and tires at almost the same rate, modified the holy hell out of the suspension, and that little bastard kept ticking with it’s little 138 hp smile.
Frequent readers know that I’ve owned two Nissan Z’s. Neither of them ever even saw a race track, auto cross, Dragon trip, or drag strip. Not even once. My first, the 350 Z was an 05 that ate through a clutch master cylinder ($350), front and rear rotors (before the 50k mark) ($400), a power window motor ($400), a rear-hatch strut ($80), and other various items. I was stuck on the side of the road with a broken 350Z a total of two times. After about 5 years of not learning my lesson, I picked up an 09 370Z which is my current (soon to be last) Nissan.
I purchased the second Z in 2011 with less than 20k on the clock, and by the end of 2012 I had already replaced the clutch master cylinder, the clutch, a bunch of transmission seals, and all of the transmission oil because of its decision to explode and hemorrhage fluid all over everything. This occurred somewhere in the 30-40k range, and manifested during my drive into work cruising down I-4 in regular traffic. Again, stranding me road-side waiting on a tow truck. In 2013 came the brake/rotor replacement that we’ve all come to expect from Z’s at about the 40,000 mark (all four rotors!). And later this year I was again blessed with another road-side, phone-a-friend, couldn’t-happen-at-a-worse-time incident when the security system fouled up while I was visiting my parents 150 miles away from home which cost me another $1600 plus a rental car, and two days of my time. Fast forward to this weekend (it’s like a gift, every year!) and ye hath received the holy trinity of Nissan Z-bullshit. As we were headed to dinner, the engine’s revs dropped dramatically and the engine moaned bloody murder as the fan belt drive on the AC compressor started its painful and audible slow death. My first reaction was to shut off the AC, which managed to get us to and from dinner and me to work the next day. But, as the serpentine belt’s screeching became more frequent, I knew it was time for another visit to the trusty dealership. I barely made it into the service garage with the 3.7 liter engine fighting with all its breath to overcome the inevitable full seizure of the accessory belt. After which, I was immediately thanked with a $1700 bill.
So far, this “reasonably priced sports car” has left me stranded, road-side, 3 times and cost me almost $6000 in repairs to systems that should not wear out on a car with less than 85k on the clock.
Anyway, if you’re looking for me this weekend, I’ll be test driving Subarus and trying to forget ever owning a Nissan.