C/C++, ML, data analysis with Python/R or learn more domain specific knowledge such as Bioinformatics or graphics or quant finance? Much appreciated, thanks.
1. Web development (transport-level and higher networking, HTML/JS/CSS, PHP/Perl/Python/Ruby, using databases, etc.)
2. Enterprise software design (domain modeling, OO programming, system architecture, scaling, security)
3. High performance (algorithms, advanced data structures, C/C++, memory management, DB internals, internet-layer and below networking, cryptography)
It sounds like you want to get into 3. A good way to start is algos/data structures. Almost all the fields the parent listed benefit from a very strong foundation in computer science: discrete math, linear algebra, algorithms, advanced data structures, etc.
Data analysis with python/R is more for scientists and mathematicians, not software developers. If you are being paid to analyze data as a programmer, usually you are analyzing very large data sets and you will be using a much more performant language or possibly even a highly parallelizable paradigm like MapReduce.
My current job mixes those three categories nicely and I love it :)
comp.arch.embedded
for a few weeks, find mags related to embedded.There are some decent bioinformaticians out there, but most of them write crap 100 line scripts, and have very little desire to learn more than the basics. I am getting increasingly frustrated, as I can see I am clearly writing significantly smarter software then these people (most of them are just counting things and plotting the counts on a graph). I am seen by management as being the same kind of skill level / skill set.
If of course you are really interested in the research, then you may like it, but do not expect your coding skills to be valued.
I don't really mind the management slights as it's an occupational hazard of a programmer. What bothered me about academic research was how the doors were shut for you if you did not pursue the traditional PhD/post-doc path of life sciences research. Also that pure Bioinformaticians even with academic pedigree was considered lower in the pecking order in comparison to "wet-lab" folks.
As crazy as it sounds, I really miss the days of writing Perl scripts (Python probably now); running BLAST and plotting Information Theory graphs. How do you like your current gig and what do you recommend for someone who is looking to jump back into it?
Apparently most labs have a shortage of bioinformaticians (at least that's what I hear here in Europe).
Yes, having a PhD will be helpful if you are looking towards a more research oriented side of things. If not you are more likely to be more of a technician, and your work will be a bit more production like.
My advice would just be to look at institutes that you would be interested in working at - their job pages. I am sure you could start with more production style things and move into a more research oriented role.
Here is the jobs page for science park I work in in Barcelona (pay doesn't sound much compared to the US). Not much up there just now, but I know we are hiring more people soon.