From the Other Side of the Interview

Part of my job includes interviewing candidates for developer positions (Flex, Java, ColdFusion, etc.). In the past two weeks I've sat through some of the most painful ones I can remember; not because of the candidates' skills, but their presentation.

Some examples:

  1. One person came in with a one page resume. Five typos, including one in the title. They claimed to be great at communication and document creation. Uh-huh.
  2. During one of the longer interviews, the candidate openly stretched and yawned as he formulated the answer to a question. Sorry to keep you awake.
  3. One claimed to be an expert Java developer. I asked what a Singleton was. They are not an expert Java developer.
  4. Another claimed to be an expert at Flex communications. I asked what an AsyncToken was. They are not an expert at Flex communications.
  5. Yet another said they were a ColdFusion expert, but had not tried that new-fangled CFC stuff yet. They are not a ColdFusion expert.

So some gentle advice for those seeking employment from someone who's been on both sides of the interview table:

  1. Spell-check your resume. Then get someone to read it over for mistakes. Then get someone else to read it over for mistakes. Then get someone else to read it over for mistakes.
  2. Don't exaggerate your skill set. I'll see through it, as will any competent technical interviewer. And they'll likely be royally pissed if you wasted their time with any blatant dishonesty.
  3. Watch your manners. I know it's a nerve-racking experience, but you're presenting yourself to people for the first time and you've got one shot to make a good impression. Something like an open yawn is offensive on many levels.
  4. The interviewer wants you to do well in the interview. We want to fill a position and we hope you're the right candidate for the job. If you sense the interviewer does not have this attitude, think about whether this company is the right fit for you.
  5. The interview is a conversation, not an interrogation. Ask good questions about the company and your future role. We like that. But also listen carefully to our questions and answer them directly. If you don't know the answer, then say so. It's easier to overlook ignorance than dishonesty.

Hope this helps somebody. Hopefully the next person I interview;)

Oliver

Speaking at MAX 2008

I'm happy to announce that I've been asked to present a session on Advanced Flex Builder 3 Tips & Tricks for MAX 2008 in San Francisco this November. A topic near and dear to my heart! Hope to see you there!

New Toronto Group Now Hiring!

Looking for work in the Toronto area? New Toronto Group (my employer) is now hiring!

If you're a Flex developer, or a Java developer looking to get into the RIA space we'd love to hear from you. We're looking for consultants, developers and trainers, so if you're interested in any or all of these, please email a resume and cover letter to:

Ed Van Beilen
New Toronto Group
edv _at_ newyyz.com

Hope to hear from you soon!

Toronto Flex Camp 2

Here we go again! Toronto Flex Camp 2 is happening on May 15th, 2008.

Ben Forta, Mike Potter, yours truly and others will be speaking. If you're interested in showing off some Flex or AIR code, drop me a line from the site.

Go to torontoflex.org for more information and to register for free.

Using GMail to handle your domain's mail

I tried, I really tried.

I did everything by the book.

I fought the good fight.

After years of struggle, I've finally given up trying to run my own mail server. Getting swamped with spam, I used whitelisting. Then the spammers reported my whitelisting response emails as spam and my ISP accused me of sending spam.

I've got better things to do.

So I decided to try Google Apps. It took about a day for my DNS entries to propagate with the new pointers to Google's mail servers and I haven't looked back!

You get up to 100 accounts with 6GB storage each, exceptional spam filtering and the ability to report the occasional spam that does make it into your inbox.

And the cost? You guessed it: free. And there are other apps as well.

Check it out at http://www.google.com/a/help/intl/en/index.html

Refactoring: Improving the Design of Existing Code

Apologies for the lack of postings lately. The good news is that I'm insanely busy (how I like it;) and have gathered a few bits of wisdom to pass along for your consideration.

I'm just finishing up Martin Fowler's book, Refactoring: Improving the Design of Existing Code. This book has fundamentally changed the way I approach application architecture and development. I've begun to employ its recommendation (even before I finished the book!) and have already reaped huge rewards in the quality of my code.

The book is a library of refactoring techniques. Like all good books, some of the concepts were already familiar, others were new and thought-provoking. As developers, we all have a concept of what refactoring is. It's nice to see it formalized in this book.

Some of the key tenets:

  • You spend 10% of your time creating code and the other 90% maintaining it. It makes sense to put in the extra effort to make it readable as well as functional.
  • The code you write is not for the compiler. It is a communication medium between you and other developers (or future-you).
  • It's better to write 10 lines of code that are easy to read and understand, than three lines that require 15 lines of comments to explain. OK, your SWF might be 50 bytes larger. I won't tell if you don't.
  • As you refactor, you'll end up needing less and less comment blocks because the intent of the code becomes self-evident (by descriptive class, method and variable names, for example).
  • A big one for me involves the planning stages of application development. It says that getting into too much detail, at the design stage, regarding how an application will be coded is usually wasted effort. Better to have a basic game plan and a team of developers that have the skills to spot problems and refactor them during the coding process. Mix this with some well-defined best practices and you've got a potent recipe for good code.
  • Finally, if you're spending more than 6 hours a day programming, take the last hour to refactor the code you've just worked on (Oliver-style). Or start the next day with an hour of refactoring (Chad-style).

At first it seems like extra effort to enforce all these principals, but I've already seen remarkably good code result from this discipline.

The books is available at:
amazon.ca
amazon.com

Rant: My Yahoo! My A**!

I've just about had it with these idiots. For years I've been able to use My Yahoo! page under Linux. Now, all of a sudden I get this condescending message.

I wouldn't mind using the new beta version if it didn't suck so badly. You can't even customize the display font like you could in the new version. It's just plain "fugly." And you simply cannot get back to the old version (which worked fine!).

I tried to contact them about this to no avail.

If anyone from Yahoo! is reading this, you've just pissed off every Linux user out there. Nice work!

No More Google Ads

In the spirit of making this site a truly free knowledge transfer area, I've decided to remove all Google ads.

Hmmm... site feels faster all of a sudden;)

Toronto Flex Camp Registration at 76%!

Wow, I can't believe how many people have signed up for Flex Camp!

If you want to be part of the fun, you'd better sign up quickly. There aren't many spots left and registration is free but mandatory.

We'll kick things off with a dinner at 5pm EST on Thursday November 15, 2007.

I'll announce the agenda in the next few days. Stay tuned.

Toronto Flex Camp: Reminder

For those of you in the Toronto area, a reminder that Flex Camp (Nov. 15th, 2007) registration is filling up quickly. If you plan to attend, head over to torontoflex.org to register.

We're firming up the speakers and agenda, which I'll announce here shortly.

Hope to see you there!

More Entries

BlogCFC was created by Raymond Camden. This blog is running version 5.8.001.