Invitational hiring, the dna answer

Posted by Simon on July 27, 2006 at 12:00 PM

We're running what I'm going to call an "invitational" hiring process. Basically it means that we'll find you, don't find us. The thing about hiring is that it's very hard to do. I've heard that—at least for software—you might as well pick a resume from the stack at random as much as use traditional HR methods (post a job, receive a bunch of resumes, filter them based on some process like keywords or something, interview a bunch of people, make a few offers, pick someone). Resumes don't really say much except for the job experience section, and even there it's thin. I think you can probably explore plenty on the topic at Joel on Software since he talks about it all the time.

I believe that hiring the right person for software can make the difference of something like 100x to 1000x in terms of creating quality code. In other words, the superstars are just so much better that they can turn a project that could take years into a matter of weeks. And it will work a lot better, you can continue to improve it, and so on. Not only that but if you're working on "hard" problems it will mean the difference between success and total abject failure. Therefore I'm not going to bother hiring someone to write code for Semacode (which is "hard") unless they are a superstar.

Here's an example. Apple has a brilliant file system search feature called "spotlight" that allows you to do a full content search of all your files in seconds. Microsoft doesn't (although they planned to and spent years working on it for the next version of windows, it's been abandoned). The difference? From what I know, it's basically this one file systems engineer that Apple picked up—if my memory is right—it's been a while— from Be .

And so it goes, if you've hung around at the top end of software development you've probably seen similar effects many times, although maybe not at such a grand scale. It could just be the team of "web developers" that spends years and millions of dollars on a system that never works, and then a small team of quality people steps in and makes it all happen overnight. Software development is a world with genuine superheroes.

I've been reading people's opinions about how you create and nurture a silicon valley-like tech hub. Waterloo is struggling to build/maintain it's status as such . It really seemed to be headed in that direction in the 80s (with watcom and others) and then things were weak for a while until RIM started really making it good in the late 90s.

What "they say" is that in order to get something like silicon valley you need three elements:

  • a leading university to act as a stabilizer, base, and talent source
  • a city/place that people like to live in
  • successful companies that spawn a generation of rich executives who reinvest in the new up-and-coming companies
UW

As a talent source and stabilizer, the University of Waterloo is great. I think that most people put it in the top 10 list of computer science schools in the world. Certainly Bill Gates'many visits to the school indicate what he thinks (recently he make UW his only Canadian stop in an international tour).

And that's good, because as someone who's running an invitational hiring program, you need people to give the invitations to. At a university, you can hook up with a network of professors, students, organizations and so on and, if you have a valuable opportunity for them, you can probably find the right people.

Of course you have to have something to offer. I think that Semacode's software is cool to work on because it has many unique and interesting technical challenges and problems. In addition, the end result—the product—is also interesting and it's fun to see how people want to use it. The superstar programmers will only be interested by superstar-level challenges. If you have one, then you can find a match.

On the subject of my previous post about the "dna" in the path at the BBC. Apparently "DNA" is the name of the software that runs h2g2 and also The Collective. I'm sure it's named after this DNA .

Comments: 0 (view/add your own) Tags: (none)

some little updates

Posted by Simon on July 23, 2006 at 12:00 PM

If you wanted to be at the JavaOne JSR-257 (contactless communication API) session but couldn't make it, go to the JavaOne session archive and click "View". You might need to register but I'm almost certain it's free. It's a sort of clever slides + audio system and I start on slide 17 and end on 19. I talk about the JSR API and then give a demo, which you can't see because there's no video. And I didn't say the word "um" as much as my friend Paul would have you believe .

Meanwhile, BBC's "Collective" (some kind of music/culture multimedia site) mentions Semacode and they emailed me to tell me about it. I might not have, but I always find the Beeb interesting. And there's some kind of special connection here even though I haven't quite figured it out.

You see, look at the path there and you see "dna" which stands for Douglas Noel Adams, the author of the Hitch-Hiker's Guide To The Galaxy , which can be abbreviated H2G2, which is the name of another site on the BBC called h2g2 . h2g2 started in 1999 and is almost, but not quite, like Wikipedia . In fact, it's a damned shame that DNA didn't live to see Wikipedia, because he might have thought that he (almost) invented the idea of a distributed-edited encyclopedia (the Book inside the book).

Oh yeah, so the question is, why is the "Collective" also under the dna directory?

Also, we have added a new White Paper to the about section . It's called White paper: which is the best 2D code? and it's a technical comparison of the major 2D barcode formats. You might find it interesting to note that for storing normal URLs, Data Matrix is massively more efficient (== smaller) than QR Code.

Comments: 0 (view/add your own) Tags: (none)

business and secrecy

Posted by Simon on July 03, 2006 at 12:00 PM

Well, it's been a long time since I wrote a proper update, and it's about time I gave up all kinds of information about what the company is doing, and its secrets and all that, which I shouldn't do.

confidential

I always thought that capitalism promoted openness. I mean, compared to the alternatives (like tyranny, communism, etc.) it certainly seems open enough. But I guess I never realized just how secretive companies are. They're constantly hoarding their knowledge against their competitors. It's the competitive advantage — one of the competitive advantages — you know something that the other guy doesn't know.

What are the competitive advantages anyway? Well, you can have better talent, better technology, better marketing, better ideas, better execution. As far as talent goes, there's no particular need for secrecy there, although most companies would consider their employee list to be worth keeping quiet (so their competitors can't steal them). On the other hand there's a whole league of professional recruiters out there who make it their job to know who works for whom, and they're only moderately successful. Most people will stay at a job they like.

Better technology — is it secret or not? Everyone knows that Semacode has some good technology. You can check for yourself, you don't have to believe me or anyone else. Just try out our software and compare it to the others. Of course, source code itself, and the specific algorithms inside it is a "trade secret". Even if I were to sit here and write out a one-page description of how our system works, it would still be damn difficult thing to reproduce, because much of the devil is in the details. But protecting the source code itself is not hard and anyway, talking about it would be very very dull outside of a highly academic environment.

What about marketing? Marketing includes how we take our technology and turn it into a product. And it includes who we are talking to, what industries, segments of industries, specific companies are we talking to, who are we "going after" and who is "going after" us. I mean that not just in the sense of who do we want to have as customers and who wants to be a customer, but also who do we see as competitors and who sees us as a competitor (it's not always the same people by the way).

Common practise in business says you don't reveal these things. Why not? Because unlike source code marketing strategies are easily transmitted, understood, and acted upon . If I gave you a list of my target customers, you could go and talk to them. Right now I might be the only one at their ear, but you could change that pretty quickly. Is that good for me, or bad?

Actually I think that's a good question, because competition can be very helpful to companies that are working in new technology areas. Maybe I should give out my contact list in the hopes that my competitors will sell my product for me. How does that work? Well, there's two phases at least to a sale — first your prospect has to decide that there's a market here worth pursuing, and then secondly they have to decide which technology provider / integrator they're going to tap to help them pursue it. You're competitors definitely help with the first half. If you've got a lot of competitors then it's a good sign that you've got a valid market. So I don't mind having competitors. Maybe I should tell everyone who my prospects and customers are.

But wait ... there's another problem with that. You see, your customers might not like you to broadcast that they're working with you . They might have reasons to want to keep your affiliation a secret. They don't want to pre-announce what they're doing. Again, it's all about competition. Here's a simple one. I'm working with X, and let's say that I go out and tell everyone. Now company Y, who are located near to X, think "hey that's a great idea why aren't we doing that" and they come to me, give me a better offer, buy an exclusive and shut down X completely. That would sure suck for X, eh? (Although it might be good for me...)

So yet another reason why I shouldn't go around broadcasting my marketing efforts is that I run the risk of pissing off the very customers I'm talking about.

So what's a business person to do? Must everything remain a secret?

I don't know.

Ideas wise, it's also tricky. I've come up with a new industry that we could market semacode in. To translate that into plain english, a bunch of new people who could really use semacode that we never thought of before . It happened kind of organically. Someone approached us to work on a project that seemed a bit out in the left-field. That particular customer / project hasn't really gone anywhere. But in the process, I realized that this industry, that they were talking about, is pretty profitable and could really use our technology. It's a very simple pitch and we have a pretty simple strategy to test it out, we know who to talk to, we've started to talk to them, etc.

Now I think to myself, I think ... hmm... have my competitors (I'm sure you know who they are) thought of this? Because if not, I could steal a march on them by getting into this new market, making some deals, and then I wouldn't have to announce them to the public until I'm good and ready. It's not like any of the people I'm talking to are blogging it.

On the other hand ... maybe if I did talk about it here, then I would attract even more interest.

But one thing I can tell you is this: I have some very good business advisors and they say keep it quiet . That's the traditional way to do it. So if I broke the mould I'd be taking a good risk and I'd have to be pretty confident that it was going to be good, or I'd have to feel strongly that it's the right thing to do.

Comments welcome, email me or even better, blog it :-)

Comments: 0 (view/add your own) Tags: (none)

This is the official Semacode Weblog!

Browse the weblog archives

Subscribe to the full-text RSS feed or the comments RSS feed.

Tags: