I actively think about three levels of knowledge that I need to acquire-
Broad- keeping up with changes in the overall industry. At this level I'm just trying to learn all the new things that are popping up, when they would be applied, alternatives, and maybe strengths and weaknesses. I mostly use podcasts for this, supplemented by reading HN and other tech news, easier to read books (like the Phoenix project), tech conference keynotes and detailed schedules (there is a ton of information to be gained just reading what people are presenting on), occasionally attending a conference, and occasional community meet ups, if those start happening again.<p>I do broad learning constantly, several hours a week, and it's mostly fun.<p>Deep- occasionally I'll do a deep dive into a new technology that I learn about I'm doing my broad learning. This happens because I've identified it as a broad industry trend that I simply need to understand (containers and kubernetes a few years back), something that I sense might be applicable to a current or upcoming project (most recently React), or just because I'm interested (augmented reality.) I use a mixture of training courses (pluralsight and o reilly because work gives me a subscription, or vendor provided learning material from the likes of Apple or Microsoft) and some hobbyists level effort capstone project. This takes about 40-80h and I often do the project as part of a hackathon. I rarely do this level of learning more than once a year and sometimes less than that. The goal isn't too become an expert, but just to be able to accomplish work in the new technology.<p>Immediate- learning as part of my day to day job. This is learning I get from having to figure out tasks (deeply reading the docs of our current tech stack to figure an obscure error), to evaluate a technology or technique against our current needs, or to learn a new technology that is part part of the job /a new project or team I've joined. Most of this is one the job learning or learning from others on my team, but sometimes there are relevant trainings. There is no real time metric here- it just happens.<p>As for your concern about being up to date on every single technology that might be listed on a job description, don't be. Most job descriptions are "aspirational." Few hiring managers expect to be able to get the "perfect" candidate. What they are really looking for is high potential and a short ramp time. Sure, I might occasionally get a resume with experience in all 8 technologies I listed on a description, but it's rare<i>. If you understand what my tech stack is and how it relates to what you know I'll forgive a lot if specifics.<p>On last thing on the job search and learning aspects of your career - keep your network up. You are 5 years in. Most likely there have been people you genuinely like that have moved on to different teams, roles, or companies. Reach out to them, find out how they are doing, what they are working on, chat about whatever you used to chat about. Trust me, people are happy you thought about them enough to reach out to them and are generally happy to talk. What your friends are working on should give you a good idea of what's actually important to know. On top of that, when you are ready to transition it's a pretty easy to ask "hey, I'd love to work with you /work with you again, is your team hiring?"<p></i> the last 'perfect' resume I got ended up being a legendarily bad interview, something my interview team jokes about imternally. Poor dude couldn't answer a single question correctly and we are pretty sure he just fabricated large parts of his resume.