Everything and the Mobile Software Universe…

  • rss
  • Home
  • About

How to interview a programmer?

Thomas Menguy | October 30, 2005

I’ve came up with this question recently : I need a new team member, but How to choose him/her? What are the good criterions? The right interview questions?.
With my point of view in mind, I’ve made a first interview and, after the interview, found this post at lifeHack.org which emphasizes on reading code from the candidat (I can’t disagree more), but point to a nice entry from artima (?).

For me an interview has to be fair: When I was myself a candidat I enjoyed my interviews (ok, difficult to really enjoy this bright stress moment for a junior) when I had the feeling that I shown what I was ABLE TO DO, that I understood QUICKLY what the interviewers explained, that I had no issue COMMUNICATING with them … But it was no all the time like that, and many interviewers were only looking at my diploma (a good one in France) or my communication skills, really never going down to the code, algorithm, scientific/technical culture etc: even if this last interview category led to some job proposal, I had a mixed feeling about the company: Why did they choose me? They don’t know If I’m goog or bad, Are they all like that? …and so what are the core values in that company? certainly not technical, so “political”?

So I’ve took some times before the interviews, and here are my own tricks to have the feeling to not loose my time and the candidat one’s ;-) :

  • What profile do I really need? … a good question isn’t it? In my case I need a programmer…
    • …but it’s not enough, here a some more precise profiles:
      1. An Executant: someone able to execute well defined tasks, great organizational and coding skills… the “process” kind of guy, able to finish cleanly a product.
      2. A Communicant: this one is able, and like, to be in front of client, write docs and presentation.
      3. A Creative: someone able to bring new ideas to the table, able to impose those ideas, invent new things (certainly not an executant…), this one will defines what he has to do.
      4. The guy who fiddles around: give him something, it will work … but forget about testing and process…
      5. Background : this one is not a profile, but is a measure of the scientific and technical culture of the candidat.
    • Knowing those profiles I try to give a % to each profile for the best match I’m looking for (ex : Executant: 70% Communicant: 5% Creative: 5% Fiddle: 20% for a good release manager ;-) ). Giving that it’s now possible through questions to “extract” this profile … and see if it is matching.
  • Execution Skills
    • Asks for process vision: versionning tools, branching process.
    • Testing: Testsuites? is it something normal for him? who has to test a code.
    • Release view and policies: When could he say that his code is ready to be externalized, what citerions did he choose?
    • C/C++ Code questions (we have a pretty good question list here in Open-Plug :-) ): Synthaxe questions, memory management, etc…
  • Creation Skills: Find some good exercises (I have some good one .. thanks Cadence!), be sure the candidat doesn’t know the exercise before, and listen carefully to the ideas, good and bad he is trying to complete (or not) the exercise.
  • Communication Skills:
    • Let him explain a big and complexe project he has been involved in, if you don’t understand … the candidat has perhaps a communication issue .. or worse few synthetic skills.
    • Talk a little of his passion, hobbies, etc.
    • Try to put him in “bad and stressfull” situation (the exercise given to check its creative skills can be enough ;-) )
  • Fiddle Skills: See if he had done some “personal” technical project, from the ground and how he made it working. How autonomous he can be?
  • Technical Culture: Let him talk about its skills … and ask anything that are (or not) related to your own expertise field, just to see if he is curious and a self-teaching kind of guy.

For me the idea to see some of the candidat own code can be a “false good idea”: Now that I’ve worked with a lot of different coders, on different projects, I can safely affirm that no one code as any other one, and that at first sight I’ve never liked ANY code not written by me, and many times for bad reasons. The only important thing are architecture, algorithm and professionalism (CPU and memory care, readability, testing coverage), but to judge a snipet of code in few minutes we tend to only focus on synthax, programming style and tricks and so only on the style, not the content…bad idea to say the least.

Thomas

Update: Sergiu gave me some nice references for technical questions (mostly C++) :

  • http://www.beyondcode.org/articles/interview.html
  • http://www.techinterviews.com/?p=238#more-238
  • http://www.geekinterview.com/Interview-Questions/Languages/C-Plus-Plus/
  • http://www.duke.edu/web/ACM/interview.html
  • http://www.possibility.com/epowiki/Wiki.jsp?page=CppInterviewQuestions
  • http://oneparticularharbor.net/sam/interview.html
Comments
No Comments »
Categories
Software, development process, project management, team management, team work
Tags
development process, project management, Software, team management, team work
Comments rss Comments rss
Trackback Trackback

Desktop Search Round-Up : part II, conclusions and final thoughts

Thomas Menguy | October 25, 2005

Again, I ‘ve tried software to … gain time, putting my business laptop stability in jeopardy, loosing hours of processing and hard drive stress use for indexing and re-indexing my files, slowing down my PC to the point where it was barely usable … everything to be sure at the end that I have choosen the best desktop search application … what a satisfaction ;-) Despite this infinite source of happiness, I hope this test will help you choose the best solution for you!

Read the rest of this entry »

Comments
1 Comment »
Categories
Software
Tags
Software
Comments rss Comments rss
Trackback Trackback

Improving my productivity : a full time job???

Thomas Menguy | October 23, 2005

Ok, it’s time for me to face reality : I have a team, I have too much work, I have to get serious about my productivity.
So let’s go web shopping for Productivity secrets ! … and let’s face a second reality : I love to dig for information, try software, in a word, loose my time playing with new toys, not sure it is good for my current issue ;-) .
Being a proud arrogant froggy, I feel really uncomfortable with the zillion of anglo-saxon self-management craps we can found everywhere, promoting the same mantra every time :”If you really want it, you can do it”.
Then I found a great community around a great Guru with an interesting approach : David Allen and it’s GTD, “Getting Things Done”. For me all the great “teaching” books has to be easy to read, all the depicted ideas have to appear as simple and good sense ones, and above all make me feel that, with an hour of thinking, I could have come up easily with a fair amount of those “brilliant” ideas ;-) . The Allen’s Book is one of those. It’s not one of those change-your-lifestyle-with-mine approach, but a more personal one, Allen seems to say : “Ok, you are good at what you are doing, I’m good at productivity, let me give you some tricks I’ve learn, and see if it fits”. Ok, I like that.
I’ve spent a lot of time trying tools, tuning my setup, reading web blogs, etc…

  1. I’ve lost A LOT of time studying
  2. I’ve lost A LOT of time tweaking a system that may fit my needs, even learnt VBA to tweak Outlook and adds macros…
  3. I’ve lost A LOT of time … because I began tweaking my system before discovering my needs ;-)
  4. I have a A LOT of FUN doing that ;-)

Now it’s time to use it …. ahum, do I really need that? Is that all? Only few categories in Outlook? those four added buttons?… Yes I think it is, the real step, as always, is in my mind, not on my laptop: what I’ve learnt, tools stay tools, a mean, not a finality, and many time, especially in computer science, we tend to forget that!
My day to day practice is changing (albeit slowly), following those common sense principles:

  • Even if it may sounds obvious, GTD made me really think about what has to be DONE, how to translate “stuffs”, ideas, meeting outputs into actionable items : giving time to extract tasks from this information magma, on a systematical basis, is, for me the greatest contribution from Allen.
  • Power of delegation without loosing control.
  • If something takes less than 2 minutes, DO IT NOW.
  • Track, write and forget : once actionable items are extracted, store them in your system (delegate or deferre them) … and be confident in your system, forget: it gives you the freedom to think about new ideas, longer term goals … precisely what I was missing, as I was overhelmed by short-terms goals and views.

Those four points may sound like GTD propaganda, blablabla … but, to be honest I’m myself surprised to follow them naturally, with few efforts. David Allen gave principles, few details, and I think, like Kathy Sierra in her great post Making happy Users, that fewer details equals better identification and appropriation of the ideas. Check also Metagrrrl Post about a similar GTD point of view.
Does it really helps my productivity? Not sure at this time. So does it help me ? definitively, cause I have less and less of those “little-things-to-change-to-improve-to-say-to-write” in mind, leaving room for more important thinking.

I’ll certainly add some other posts about my setup, my outlook/evernote customization, desktop search etc.

As a side effect of all this self-teaching I’ve discovered many great blogs and posts, particularly those GTD few ones:

  • Working Smart
  • Office Zealot and The Latest Getting Things Done Blogs
  • GTD Wanabe
  • The famous 43Folders

And a special mention to the excellent Creating Passionate Users, that has nothing to do with productivity, but is one of my preferred read, waiting eagerly each new post with a mixed feeling od admiration …and yes jealousy for the Kathy Sierra’s style sharp mind and clever comments, thanks Kathy for sharing your talent! Do not miss her posts about the Devil’s advocate or Making happy Users.

For english readers … sorry for my style but, hey, I’m french ;-)

Thomas

Comments
No Comments »
Categories
GTD, Uncategorized, productivity
Tags
GTD, productivity, Uncategorized
Comments rss Comments rss
Trackback Trackback

Desktop Search Round-Up : part I, installation, first impressions

Thomas Menguy |

Ok, I have a big hard drive … sounds cool? Not that much cause I’ve a really hard time retreiving my data : I have over 700Mb of mails in outlook, Gigs of specifications and docs and many CVS trees full of source code…. Here comes the Desktop Search apps to my rescue. But which one is the right/best for me? So here we go for a round-up of the four main players : Copernice Desktop Search, Yahoo Desktop Search, Google Desktop Search, Windows Desktop Search

Read the rest of this entry »

Comments
No Comments »
Categories
Software
Tags
Software
Comments rss Comments rss
Trackback Trackback

Casio Exilim Z750 : looking for the best young father camera!

Thomas Menguy |

Ok, I use it for a few months now with a 1Go San Disk SD card Ultra II, a wedding, our holidays many many shots … (see the family blog for shots)

  • Battery life : impressive, the first quality of this model.
  • Move recording : why by a camcorder??? really great movies.
  • FAST,FAST and FAST
  • Advance mode (ie video recording runs in background and it keeps 5s of film BEFORE your press the record button, you never miss this lovely baby smile…)
  • Did I say it was FAST ?
  • Flash is OK, not perfect…..
  • Autofocus : correct … but FAST ;-)

So this is a great one! costs around 300 euros now, my father and three of my (pretty techy) friends had bought one, and are all quite happy. Bravo Casio, you’ve won an happy customer!

Thomas

Comments
1 Comment »
Categories
Gadgets/PDA/Phones etc...
Tags
Gadgets/PDA/Phones-etc...
Comments rss Comments rss
Trackback Trackback

What I’ve enjoyed reading

Recent Posts

  • You will be disappointed by your Android Market application sales…think twice before jumping on the little robot
  • Why Adobe should change its mobile strategy (again)
  • No Qt for S40, Maemo and Symbian apps won’t be compatible: is Nokia really willing to unify development for OVI Appstore?
  • Why Samsung Bada makes sense vs an Android-me-too journey
  • Flex on Mobile: What’s coming in ELIPS Studio…iPhone insights (and android teasing :) )

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org
rss Comments rss valid xhtml 1.1 design by jide powered by Wordpress get firefox