I went through this a lot later in life, and what worked for me was "going academic". I hit Lambda the Ultimate and started challenging myself to learn a lot of really advanced stuff. I'd pick out papers that were hard to understand and go through them step by step, as many times as necessary.
I'd also recommend learning to do something complicated in your personal life, like flying, or diving, or fixing cars. Complexity doesn't exist just in software; it's all around us. Embrace it in your personal life and it will balance what's in your professional life.
ugh, if only it were that simple. I've been in technology for almost 20 years, I build cabinets, fix cars (currently swapping engines in an RX-7), garden, etc. I'm just burned out - I'd love to take a 6 week break, but need the money (5 kids, a wife, a mortgage, a car-payment).
I'd also recommend learning to do something complicated in your personal life, like flying, or diving, or fixing cars. Complexity doesn't exist just in software; it's all around us. Embrace it in your personal life and it will balance what's in your professional life.