I've been a software developer for close to 15 years and while I like most of it, there's one thing in particular that I love above all: optimization. Specifically optimization for speed.

It's the kind of work I can spend hours on without counting. I'll have fun doing it, fun thinking about it outside of work, I'll show up to work earlier for it, the whole nine yards. It's not very often that I get the opportunity to do that, but when I do get that I'm in software heaven. It's work I'm good at and love doing.

I've registered on StackOverflow email alerts for job descriptions that contain the word "optimize", but I feel like this isn't the best approach.

What, if anything, could I do to orient my career to doing mostly just that? To find or get job offers that center on that?

  • can you be more specific about the optimization you are interested in? is it algorithm optimization or optimization in general? is it optimization at high scale or micro optimization? – kaptan Nov 16 '16 at 21:03
  • 1
    I don't think I have seen a job which is solely about optimisation of existing products. Projects are more likely candidates. I think developers are expected to optimise as part of their normal role rather than bring someone in to rewrite their code and do it for them. – Kilisi Nov 16 '16 at 21:30
  • 1
    I would take a look at Process Engineering, it strives to optimize the process of which it is based. – Prodnegel Nov 16 '16 at 21:34
  • @kaptan all of the above. Some of the problems I've tackled over the years required going back to the algorithms used and how they were implemented (graphs, like back in school!), others involved caching and building dictionaries, pre-sorting data, changing queries, adding or removing database indexes, all the way down to twiddling with calculations and finding out which types could be preferred and how much precision was required. I haven't done any assembly tweaking professionally but only because there was no need to at the time. – MPelletier Nov 16 '16 at 22:45
  • Look for applications that have lots of data and lots of transactions. – paparazzo Nov 17 '16 at 5:09

TL;DR; Don't.

Make it your personnal favorite. Help people around showing them how to spot inefficiencies and how to make it run better. Be a multiplier of this ability. Be the go-to person for this subject. That can move your career forward.

Just don't make your focus. Optimizing a piece of code would save money for the company? Will it pay for the effort you'll have to put on? Usually not. It will pay off sometimes. There's value in loading up a web page fast, but in a long running, asynchronous process it may not make much of a difference. I would say it is more important to have a working product after all. People will find this skill valuable, but I guess you'll lose more opportunities than you'll be able to find.

BTW, congrats for doing this thing for 15 years already and still finding joy in the activity.

  • I like that you answered, just not the words I wanted to read. But thanks for taking the time to write. – MPelletier Nov 17 '16 at 13:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.