Friday, March 26, 2010

Salary negotiation aka Career Limiting Post #13

Here is the hard truth boys and girls. If you don't ask for a raise, you won't get one or you won't get an appropriate one.

Asking for a raise is one of the hardest things you can do within an organization. Anything to do with salaries and money just becomes awkward (exception: any sales organization). And whilst I've been ripped off myself in the past, I won't pass judgement because for a manager, it is hard to give good raises.

In most organizations, this is how it works. A manager with direct staff will be proportioned $N of his budget to be allocated to merit increases and bonuses. That $N is often a tiny percentage of the total existing salary of the group. He has to then divide this up amongst everyone in a fair manner. That $N is fixed. So in order to give you a higher bonus/salary increase, he needs to give someone else a crappier bonus/salary increase. The excuse 'My team performed brilliantly, we deserve a bigger pool to distribute' doesn't typically work.

A manager's job is hard enough as it is. Knowing exactly why you deserve a bigger increase than 'Bob' can be very hard. Two things, particularly in software. Working more hours doesn't mean anything. Results are all that matter. Secondly, results are STILL hard to compare. If you have a project manager who met their results and a tester who met their results, who deserves more?

You deserve more.

That's the purpose of this post. I want to show you how. To prove to you I'm not making up random hypothetical nonsense, here's my story. I enjoyed my previous roles, but I felt underpaid and this was becoming a problem (Read about Herzberg Motivation Theory to understand why). My wonderful coach (separate concept to my manager) gave me the confidence to go make this right. I got a 25% change in my salary and I'll show you how in three easy(sort of) steps.

1. Market value.
At the end of the day, you need to get paid market value for your skills. If you love your job, market value is fine. The market value for the vast majority of jobs is really easy to find out.

1.1. Online salary information
Visit glassdoor.com, payscale.com or salary.com and fill in enough information to give you an approximation of what you're worth for a particular role, with X experience and in a particular location.

1.2. Ask a recruiter.
Recruiters can be scum, but some recruiters are honest, professional and clued into the market. Treasure and look after the good ones. Ask 3-4 recruiters what someone with your experience and skill set will collect in the open market with current conditions. Write down the dollar value, the recruiter's name, date contacted and their phone number. You'll need this for later. Have a one page document with the market information from online and the recruiter.

2. Achievements to date.
You're probably asking yourself why bother doing this? If you're under market rate, surely your boss will adjust you to market rate and if he doesn't you can just get a job elsewhere right?

Wrong!

Your best move isn't to leave. Leaving has significant costs outside of the job hunt which I won't go into here. Your best move is to remind your boss why you are important to this division.

In a single A4 page (no more, managers are busy), write down:
  • How you're going above and beyond your contract.
  • What are the significant accomplishments you have achieved.
  • What are the skills/knowledge only YOU have.
  • This one is often missed, but it is important. What are the key relationships you own? If you are the account manager for a key business or that developer who everyone on the team loves, you leaving can cause that account to move with you, or that team's morale to plummet.
If you are struggling to fill in the above, guess what? You actually don't deserve that pay adjustment to market rate. What the hell have you been doing all this time? You have been just doing your job, not kicking-ass in your role.

3. Talk to the functional manager in charge.
Not to HR, not to your PM if you're in a matrix organization, but your functional/line manager.
However, I will say this. If you have a good working relationship with the manager ABOVE your line manager AND you know your line manager isn't capable of improving your situation, you CAN attempt going to that senior manager/director. Yes thats what I did and yes there were consequences good and bad (let's not go into that here).
  • Book an meeting (at least two days away) with the two page document attached with a friendly "Hi John, I want to discuss my current renumeration with you, could you spare 15mins to go over this document?", or something to that effect. No hint of "I'm going to leave if I don't get my raise". It's unprofessional and no-one is impressed.
  • That said, you did include the recruiters' information right? This is your most subtle way of saying, "I'm taking this seriously and I hope you do as well."
  • Have the discussion. At this point you've done all you can. Hold firm, but play nice. You will get plenty of excuses. You just want them to say they'll try something for you. You won't get that increase in this meeting. Normally management has to wait till the next review cycle or if it's really urgent (you need to be a star), they'll put in an emergency request with their boss.
Hopefully you'll get an pleasant surprise within a few weeks. If you don't and you are below market rates and you have many accomplishments, you need to seriously consider if your current job is right for you. I hope this information has been useful to you.

Good luck!

Wednesday, March 24, 2010

Being a T1000 would make being soul-less more fun

(Repost - to fix the odd formatting problems. I do hate blogger sometimes)

Blast from the past - This is another post which I wrote over 4 months ago and never got around to posting. Enjoy!

At a late night function with co-workers, I had a colleague bring along her friend who is a beautician for a local hair-dresser. She introduced herself and told us her profession and then asked what we did. My manager at the time mentioned that she worked in IT as a Program Manager. Our beautician friend was impressed and a brief glance could tell she was mildly intimidated by being a blue-collar worker amongst a sea of white-collar technologists.

So my manager started to put down the entire IT field as boring, cold and soul-less. And then started exalting the joys of being a beautician: how they get to be creative, how they get to work with new people every day and so on. My boss enjoys her job, and I greatly suspect her saying this was just a NLP technique to win the other person's approval over or perhaps to allay any feelings of inferiority.

Whilst I'm completely aware that being a beautician can be a rewarding career from a personal stand point, I don't see the need to degrade working in IT in the process. Being vaguely experienced in social interaction, something tells me that ragging on anything, particularly your own job is a form of whining and it has a great chance of backfiring on you.

The tech industries (pure software, Telco, IT support organizations) are at its core, engineering services. Wikipedia defines it as "discipline, art and profession of acquiring and applying technical, scientific and mathematical knowledge to design and implement materials, structures, machines, devices, systems, and processes that safely realize a desired objective or inventions."

Notice how it says both a discipline and an art. This is a reason why engineers get respect. You have to be both disciplined like a soldier and sometimes as creative as an painter in order to get the work done. The word itself is Latin for cleverness. What we do changes the lives of hundreds, maybe thousands of people for the better. Perhaps it is because I haven't been working for long enough to become jaded and broken, but I still believe in my profession and industry as outlets for something amazing.

So yes, I can totally believe your job is fantastic. I'm sure there is some aspect in your job that is significantly better than mine. And I'm sure something about my job rocks over yours. At the end of the day, let's celebrate our professions, our industry and our lives, not complain about it.

Tuesday, March 09, 2010

The girls give it up for the VMWare Playa

After raging at Windows Virtual PC for not recognizing USB devices (and consequently halting my Android development), I threw away my Windows XP virtualized development environment and decided to start again completely anew.

I have Ubuntu 9.10 loaded into VMWare Player 3.0 and I've never been happier. Considering I migrated from MS Virtual PC, this might seem obvious, but this is actually nicer than Sun's Virtual Box as well.

Having only had a cursory glance at the VMWare architecture, I have no idea how the player runs so quickly for loading and operating VMs. The 'suspend VM' functionality is fast as well, which is particularly useful when you want to stop working so you can get in a round of Bad Company 2. In fact, after long periods of inactivity, the VM's real memory also seems to swap into virtual memory so efficiently that I've actually played rounds of Call of Duty (less disk intensive than BC2) and didn't even notice. In addition (and this was a REAL pet peeve of mine) VMWare player properly handles resizing of the window of the VM. VPC used to give me scrollbars within the desktop and that was infuriating.

Of course a lot has to do with the fact I've got a Ubuntu install in there instead of my old Windoze XP installation. Having only 2GB of memory on this aging machine, it is nice allocating the same amount of memory to the VM and getting significantly better performance.

One extremely cool feature exclusive to VMWare Player is Unity. You can run both the VM's application and the Host OS's applications side by side so it appears that they are in the same Window Manager Space. This removes some of the artificial "I'm working in windows now" transitions that happen and allow you to just use the applications more naturally. By activating the 'Shared Folders' option, you can save the files so that it can be shared between the host and the guest.

And I know what you're thinking. Why don't you just modify your existing OS to support the functions you need rather than having one OS and an OS stuck inside a hefty VM?
  1. I like to keep my development environments inside VMs. This way, hardware upgrades, hard-disk explosions, my tendency to rage-format among other things don't force me to reinstall EVERYTHING again.
  2. I hate Wine/emulators for running Windows apps in Linux and I dislike cygwin for getting a command shell inside Windows. Use the real deal man!
Some minor niggling points:
  • Oddly enough, I still get clock drift inside Ubuntu just like I did inside my XP installation. I've rectified this by installing NTP and configuring Ubuntu to connect to the CSIRO public NTP.
  • One unusual thing I cannot seem to fix is ubuntu seemingly either releasing the network connection or dropping CPU cycles down dramatically on a VM when you are out of focus from the VM. So for example, if I'm downloading a large file in firefox inside the VM, if I change focus away from the VM, it ends up slowing and terminating that download after a few seconds.
That said, these are minor quibbles and my Ubuntu box is often open. I'm guessing in future, it'll only get better again. Maybe my windows 7 and Ubuntu will run side by side in a hypervisor next. Who knows...

Friday, March 05, 2010

Episode 2: The Attack of the Social Media Tools

You might recall me viciously putting down Facebook, Twitter and others in an earlier post. In a delicious twist of irony, I am using all of those services now on a fairly regular and beneficial basis. In fact, I'm on MORE social networks then I was 2 years ago. Let us approach these posts and see where I was right and where I was so wrong.

Myspace
I was right about this. Myspace is dying. Slowly but surely enough. They are trying to rebrand themselves as a music site and this might work out for them. A huge number of huge artists at the moment got their start in myspace.

Facebook
Facebook is an essential service to me. My entire friends circle is on Facebook and everything is done through here. There is no more 'calling someone up for a night out'. Someone sends out the invite, people accept and rock up. Photos don't have to be shared via USB or CDs, they just all go onto FB photos*. You are intimately aware of what is happening in some of your friends' lives and commenting is rife. Some of those comments deservedly end up on FailBooking. I mentioned before that Facebook is a 'friend grab' in that people friend everyone they meet to increase their numbers. Whilst this does still happen, I believe most people actually leverage Facebook to build deeper relationships with those people they run into once or twice. I know I've helped people who I've met once, but subsequently kept in regular contact with on FB.

I was spot on in terms of the privacy problems I mentioned, but in Facebook's defense, they've also introduced a number of measures to give people at least the illusion of privacy (though not before violating it a few times...Beacon anyone?).

Linked In
Linked-In's benefit is actually very real at least in the IT sphere. I've had quite a number of IT recruiters contact me through Linked-In and I've published most of my information using the hResume style profiles they have on LinkedIn. In fact I'm going to bet in the future, Word CVs will become a thing of the past and people will forward the link to their Linked-In public profile.I've yet to use much of the capabilities of Linked-In for doing such things as using relationships to get through to particular companies, but in the coming weeks, who knows!

Twitter
Twitter has very much morphed into something wonderful though, it really does depend on who you are 'Following'. There are amazing professionals who post intriguing articles to read, service professionals who tell you when services crash and come back up and those crazy friends who always end up partying and want you to come along. I think the advent of TwitPic, geotagging and the 3rd party APIs raised Twitter from Yet Another Social Media tool to being an integral part of the modern technorati and even normal citizens.

Now that is just the four I was slagging off previously. Hell, I'm now on Google Buzz, Google Reader, Youtube channels, Vimeo, Orkut, Bioware Social Network, the Steam Community in one fashion or another. There is more data being thrown at me then ever before and I think the key to survival is know what you want. There isn't enough time to look at everything in detail. There really is barely time to even give a cursory glance to everything.

I'll revise my previous message and say that Social Media is what you make of it. It can be a waste of time, a way to lose your privacy** and a way to ostracize yourself from the real world. Or it can be a way to learn from your trusted circle, a way to let people know how awesome you are and a chance to build meaningful relationships with those you might not be able to meet easily.

------------------------------------------------------------------------------------

* This does irk me since FB uses terrible compression and most photos look terrible. That said, most photos are myspace-style photos taken at parties which looked mediocre to begin with.

** Or it can be REALLY evil: Check the following two sites out which are plain privacy violation central!Geotagging when you just had sex: http://www.ijustmadelove.com/Knowing when a user is out of home: http://www.pleaserobme.com/

Smartphones: Making people dumber since 1992

There are some great upsides to being back on the market. I've been consuming content non-stop for the last three weeks in an attempt to get reacquainted with the latest tech trends. When you're busy working, often 'sharpening the saw' has to take a backseat to the realities of work. Over the last two weeks I've started playing with new techs, started reading about different management theories, lots of other interesting articles (intermingled with a unhealthy dose of Dragon Age: Origins).

At some point you realize you want to give back to the internet community rather than just be a consumer and hence I've decided to start blogging again.

It has been a while since I've posted so lets start with something lightweight. Like my Android!

I decided to leave the stone age and join the portable computing age with an new smartphone. I purchased the HTC Magic from Vodafone. I won't give you reviews about all the specs, how fast or pretty the phone is, you can get these from Engadget or Giz or any number of other bloggers. No, I want to talk about a few other things.

The Work Stuff

What I found interesting is how most of my use cases for getting a laptop disappeared when I got this smartphone. Here are the primary use cases I had for getting an laptop:
  • Able to answer email anywhere: Answering email on the go using gmail is straightforward and fun.
  • Write documents: It turned out I never wanted to write 'documents' on the go, but the ability to capture ideas in bullet form. In a sense I can actually produce more content because I'm only concerned with ideas, not structure and presentation, which are activities much better suited to my large monitor.
  • Have access to various applications: Turned out most of those apps are available on a smartphone anyway. Train timetables, twitter, IM Clients, PasswordSafe and the list goes on.
The Fun Stuff

Being a well known gaming extraordinare, you were probably thinking, why isn't gaming on the go up there? Despite the giant portable games market, I never had any interest in this, so the somewhat sluggish HTC Magic's CPU never caused me a problem. That is not to say I have no interest in media at all.
  • Videos - the HTC only plays MP4, 3GP and Youtube. No support for flash like most smartphones which actually doesn't bother you as much as you think. The MP4 HAS to be downloaded at the correct resolution (320x480) for the phone otherwise it has to rescale and on the QualComm processor, this just results in slow, jerky video. But get something made for that resolution, like the TED Talks podcast and its just beautiful. Tip: Get a different video player from the Android Market than the inbuilt one though.
  • Music - Things that drive me crazy #133. Hearing a song, not knowing what it is and forgetting the lyrics for Googling later. Enter the well known app Shazam. Second problem, not knowing the words for singing along. Enter TuneWiki. Unfortunately they are different apps. If only they'd mate and produce a beautiful baby application. But otherwise this is perfect. If only the android had iTunes like integration for my songlists however. Oh well, can't win everything.
What I found fascinating are the behavioural changes.
  • I used to try to memorize prices when shopping and inevitably fail. Now I simply capture them using photos and look it up when I go home. I've recently got a Barcode Scanner/Google Shopper app which I've yet to try out.
  • Disregard for checking before leaving - Previously, if you have an engagement, I'd look up where, find it on Gmaps, confirm the time and so on. Now I just leave and figure it out as I go. There is always moments on the train or at red lights where you can check everything online.
  • There is no such thing as loneliness. The long 1 hour commute on the train after a night out is an furious IM texting session with people using GTalk or Ebuddy (for MSN/FB). I've also been practicing ignoring the notifications from the phone to overcome the urge to consume whatever email, facebook message or tweet. I can't believe there isn't an free app to disable notifications at night yet however. Hopefully with time...
Whilst I still hold true to what I said before in that you can survive on phone calls and text alone, this is like saying you can survive on dialup alone when you have broadband. You can, but you're just SO much less effective that moving back to that previous model is crippling.