Choosing What to Learn (and What to Skip)
Software developers face an overwhelming number of languages, frameworks, and platforms, making it difficult to decide where to focus time and energy. Three engineers at different career stages—Karthik Iyer (JPMorgan Chase), Monica Powell (Newsela), and Dan Kuebrich (FullStory)—shared their approaches to keeping skills current in a panel discussion moderated by The ReadME Project's Klint Finley.
All three agree that the most effective learning strategy starts with immediate needs. Powell, a GitHub Star and founder of React Robins, learned React deeply when her first job required it, going beyond work assignments by rebuilding her personal website in the framework. Kuebrich, VP of platform engineering at FullStory, advocates for learning technologies you actually need to solve real problems today. For Iyer, who is early in his career, the focus is on broad domains like networking or machine learning rather than specific tools, since fundamentals transfer across platforms.
When learning for its own sake, Kuebrich recommends choosing something genuinely different from your current skill set—a functional language if you work in object-oriented code, or a statically typed language if you're used to dynamic typing. Powell uses side projects to explore technologies that interest her but may not be immediately useful, such as 3D libraries.
When to Say No
The panelists apply clear filters for rejecting technologies. Kuebrich only adopts a new tool when there's a compelling reason it beats existing solutions, preferring a small set of well-known tools. Powell skips anything that doesn't address the kinds of problems she works on, noting she recently deprioritized serverless databases because her current work and personal projects don't require them.
Iyer tries not to dismiss technologies without giving them a fair look. He attempted machine learning despite the mathematical requirements, discovered it wasn't for him, and shifted toward data visualization—but keeps it as a possibility to revisit. He also advises paying attention to which platforms are being phased out, particularly for legacy technologies you're not actively using at work.
Most Transferable Skills
Iyer credits core computer science fundamentals—data structures, algorithms, and design patterns—as the most portable knowledge, noting that principles learned in one language apply to others. Kuebrich goes a layer deeper, describing self-directed research: finding answers in documentation, code, and git logs rather than always asking colleagues.
Powell highlights accessibility as a universally applicable skill, since auditing websites for accessibility issues works regardless of framework. Web performance, which she considers a subset of accessibility, helps ensure users on slow connections can access core functionality. She also emphasizes knowing how you learn best and names Git as a highly portable tool across roles.
Scheduling Learning Time
Time commitments vary, but consistency outweighs volume. Kuebrich's company runs a "sharpen the saw" program allowing up to four hours per week for learning, yet he notes the best learning happens when your job itself pushes your skills and curiosity extends beyond immediate responsibilities. Powell has gone through intense learning phases early in roles, building projects outside work to understand how the full application stack fits together.
Iyer spends roughly half an hour daily at work reading or watching tutorials when his schedule allows, with open source work in personal time. Powell recommends setting small, achievable goals, citing James Clear's Atomic Habits: thirty minutes daily compounds significantly over a year, even when progress feels slow initially.



