Jobreel — Aussie tech jobs

February 19, 2008

Oleg & I took a brief detour from developing tiinker to put together Jobreel, a job board for Australian technology jobs.

Jobreel requires all ads to identify the employing company. Agents and recruiters may not post ads on behalf of anonymous employers. This massively reduces the number of crappy ads you have to trawl through to find something interesting, and helps employers’ posts stand out from the crowd. Advertising is currently free while we get up and running. More on the FAQ.
I’m hoping Jobreel will help good Australian companies and technologists get together, as well as providing some exposure for the industry. Ideally browsing Jobreel would give you pretty much a who’s who of forward-thinking tech companies in Australia, but we’ll have to wait and see.

Did I mention it’s currently free? If you’re seeking someone, now’s the time to post.

Start-up like it’s 1999

January 17, 2008

(Originally published in Beta, CSE@UNSW’s student newsletter, week 13 session 2, 2007. http://cgi.cse.unsw.edu.au/~beta/archive.php)

Alex knows nothing about starting a business, which is why he did.

What are you going to do after you graduate? Sell your talent, creativity and daylight hours to a bank? Stave off the soul-selling by doing a PhD? Well stop right there; there’s another option that’s both harder work than a PhD and pays less than a pin-the-graduate-on-the-donkey job. You can start your own business, code that sweet application you’ve always wanted to and take on the world on your terms. And as it happens, your complete lack of experience may turn out to be an advantage.

The benefits of launching a start-up are probably already apparent to you – work on something you really enjoy, in your own hours, wherever you want, doing it your way. What you might not realise is that you can actually do it. Right now, your biggest barrier to starting is probably your fear or lack of confidence. But soon after graduation, when you’re young, enthusiastic and unencumbered is the perfect time.

Being young has serious advantages when it some to starting something. You’re idealistic, enthusiastic and persistent, not yet having been beaten into submission by the real world. Starting your own thing takes a lot of enthusiasm and stamina, perhaps even more so than it takes actual talent. While your skills will improve with experience, your enthusiasm for tackling hard stuff is unlikely to rise throughout life. Just as importantly, you have no idea that what you’re dreaming of can’t be done. Or, if it can, how hard it will be. This is ideal, because if you knew what was in store you might never start. Ignorance coupled with enthusiasm is a formidable weapon. You also don’t need to know much about business to start a start-up. Actual success might require some knowledge but you can pick that up along the way. Your real focus should be creating a kick-ass product or service that everyone loves, which is much harder. Only with your product will business experience even become relevant.

Fresh from uni you’re also cheap, another advantage. Reducing your quality of life is hard; someone whose climbed up to a six-figure income will have a far harder time rationing savings than will a student. You live in poverty already so not having a regular income won’t seem like a big deal. For many start-ups, the biggest cost is the people. If you and your mates work for free then your costs will be practically zero. (Living with your parents is even better – not only is life cheap but you don’t have to waste valuable coding time on meanial tasks like cooking and cleaning).

Another advantage of youth is that you’re not tied down; by responsibility, by family, or by (much) debt. A mortgage and a family to support makes it difficult to justify the risk of dropping everything to follow your dreams. Age breeds risk-aversion. But right now you have nothing to lose. Sure, you’ll burn through some savings and quite likey fail, but that’s far less of a deal in your early twenties than mid-thirties. You’ll have plenty of time to pick yourself up and start again. Later on in life, you might not have that luxury.

Somewhat paradoxically, failing at starting a company when you’re young is actually a huge success. Failing when you’re older and supposedly wiser is probably pretty embarrassing, especially if you end up broke. But failing when you’re young and stupid is, if anything, glorious. Everyone will be full of praise for your determination and guts*, wishing they’d been as reckless when they were young. A good thing, since failure is the most likely outcome. But it’s fear of failure that’s the problem, not failure itself. Running your own business, even if you fold, is great fun, and failure will teach you many lessons. Far better than getting a job, failing at a start-up is probably the best experience you can get to prepare you for… the next one.

If you dream of working on your own terms, now is the time to do it. In fact, why wait until graduation – if you work fast you can probably fail one business even before you’re wearing the mortar board.

 

* I hope

Well, duh.

I think everyone knows you have a problem. Possibly even yourselves. Trains continually run late or are cancelled. The network clogs up causing follow-on delays. Even after degrading performance with a lower-throughput timetable you struggle to meet performance objectives (weak ones, too: eleven out of twelve trains arriving within 5 minutes of schedule). Even this reported performance is artificially high since large segments of the infrastructure are out of service every weekend and not counted. Trackwork is such a likely event that it’s the third most prominent link on the CityRail website, trailing only Home and Timetables.

But these aren’t the problem. These are merely symptoms of your problem. Your problem is best illustrated by your careers page. Or what’s not on your careers page. Apparently you have no need for anyone to work on scheduling, programming and optimisation of the CityRail network. This is clearly a ridiculously hard problem but it seems you don’t want anyone to help you solve it. I can see a couple of possible reasons for this, but they all mean you’re doing something wrong.

Perhaps you think the problem is solved, that what you have is good enough and the problems lie elsewhere. Um, no. I really hope you’re not that blind. You have scheduling problems.

Possibly you already have people employed in these roles. They’ve probably been at CityRail for a long time having moved up from being a station master or locomotive engineer or something equally irrelevant but are deeply familiar with the network etc. etc. Well, it appears that they suck, or have been promoted outside their competence, or just don’t care any more.

Maybe you bought some software from a better rail corporation elsewhere in the world, and you plugged in your network and requirements and out popped the current plan. Wait, so you’re telling me that no-one at RailCorp actually knows how the schedule is created? Please, please let this not be the case. You need to have this knowledge yourselves.

More likely you outsourced the planning and scheduling to some other company. If it was a big consulting firm, we are doomed. But in any case, you probably outsourced it to a team with no idea about rail networks, particularly the myriad complexities of Sydney’s. I’m sure you provided very detailed requirements and they might even have given you exactly what you asked for, but it still sucks. They don’t understand rail. It’s hard! And now whenever you want something changed you need to go back and write a detailed specification and open up the taxpayers’ chequebook and you already forked out millions up front and you’re running a tight budget so really it’s easier just to let it keep sucking.

RailCorp, you need to solve this problem yourselves, and you need to do it with the right people. You need to solve this problem yourselves, build an in-house rail planning and scheduling system, because the problem is really hard and depends crucially on details of Sydney’s particular infrastructure and requirements. You can’t just buy software from someone else. It will have been built with an entirely different set of assumptions, and it won’t work. You can’t outsource it. You already have the complex, detailed domain knowledge from running (barely) the network. You can’t effectively transfer that to another organisation. And the situation will change continually and you need to be able to react, fast.

You need to keep the knowledge of how the network is programmed, and how to create that program, internal. It needs to reside in the collective mind of your employees. The people with the responsibility for an efficient train network need to also have the knowledge and authority required to make it efficient. You can’t pass the buck — it’ll just end up on the floor and you’ll be bending down to pick it up when something … unfortunate happens.

But I have some good news. The people you need exist. In Sydney (and everywhere else). You need people who enjoy solving problems like this. People who get more enthusiastic the harder the problem is, the more complexities and special cases there are to be encompassed by an elusive elegant solution. People who will think about the problem constantly, never resting until they reach a perfect solution (which they never will), but who will reach a really really good solution with imperfections you won’t even notice.

These people are commonly known as computer programmers. Programmers have wet dreams about problems like this. They are hard-problem otaku. There is nothing to match the challenge of a problem like this, the complexities, the endless possibilities. Along with routing road traffic, programming a rail network is one of those problems that many programmers secretly long to attack but don’t have the physical network to try it out on. Good programmers dig a problem like this, and will work tirelessly to create an efficient, elegant and practical solution to it for the sheer joy.

Not just any programmers, of course. Many programmers suck. They’re probably the ones employed by the consulting firms you outsource to. That’s right, you pay a premium to use the crappy programmers who went to work at PWC or IBM because they couldn’t get a better job. You have a better job, potentially, and you need the best programmers to work on it. Perhaps the top 3% of computer science grads would be suitable. Maybe even the top 1%. But they would nail this problem.

You’ll have to do things a little differently though. For a start you need to employ only the very best, which seems counter to the way most government-related organisations work. It might take a while to find them, but you can’t just hire people who are capable, you need people who are brilliant. Luckily for you, they would go crazy for a chance to solve your problems. You’ll need to pay them too. What they’re worth, which is a lot. There are other jobs with challenging problems too, so you need to pay them commensurately or you won’t be taken seriously.

You won’t need many of them though. A team of five, with a great leader and great equipment, should set you back less than $1m a year. Give them what they want (responsibility, authority, freedom, time) and they will solve your problem. Not only solve it, they’ll give you the tools to solve it repeatedly and better. And the knowledge of how to solve it — why the solution works, on what assumptions it rests, its robustness and sensitivities — will be within RailCorp. The experts will be right there with you, and they will take responsibility for what they create.

———

I’m not particularly optimistic that you’ll ever do something like this. It’s too different to how you’ve worked for the past couple of decades. It might actually work. It probably requires some massive change at the top for you to grow the balls required to do this. No doubt the incumbent management would see all sorts of problems with a plan like this, and it’s not like I personally have deep rail experience. The NSW RTA have the right idea though. Their locally-developed SCATS traffic control system is effective and has been sold to some 80 cities worldwide (brochure). Take a leaf from their book.

In any case, this idea has one definite thing going for it – you’re not doing it now, and what you’re doing now sucks.