[{"data":1,"prerenderedAt":536},["ShallowReactive",2],{"navigation":3,"/blog/what-hiring-managers-want-in-developer-portfolios-2025":30,"/blog/what-hiring-managers-want-in-developer-portfolios-2025-surround":533},[4],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Blog","/blog","blog",[9,13,17,21,25],{"title":10,"path":11,"stem":12},"10 Coding Practices I Follow on Every Project (So You Don’t Have To Regret Hiring Me)","/blog/10-coding-practices-i-follow-every-project","blog/10-coding-practices-i-follow-every-project",{"title":14,"path":15,"stem":16},"AI vs Human Developers in 2025: A Collaboration Playbook","/blog/ai-vs-human-developers-collaboration-playbook","blog/ai-vs-human-developers-collaboration-playbook",{"title":18,"path":19,"stem":20},"Frontend vs Backend: The Endless Battle for Supremacy (And Why You Shouldn't Care)","/blog/frontend-vs-backend-the-endless-battle-for-supremacy-and-why-you-shouldn-t-care","blog/frontend-vs-backend-the-endless-battle-for-supremacy-and-why-you-shouldn-t-care",{"title":22,"path":23,"stem":24},"Scaling New Heights: Building Scalable Vue and Nuxt Applications","/blog/scaling-new-heights-building-scalable-vue-and-nuxt-applications","blog/scaling-new-heights-building-scalable-vue-and-nuxt-applications",{"title":26,"path":27,"stem":28},"What Hiring Managers Really Look for in Developer Portfolios in 2025","/blog/what-hiring-managers-want-in-developer-portfolios-2025","blog/what-hiring-managers-want-in-developer-portfolios-2025",false,{"id":31,"title":26,"author":32,"body":38,"canonical":516,"coverAlt":517,"date":518,"description":519,"excerpt":520,"extension":521,"featured":522,"image":523,"meta":524,"minRead":525,"navigation":522,"path":27,"seo":526,"stem":28,"tags":527,"__hash__":532},"blog/blog/what-hiring-managers-want-in-developer-portfolios-2025.md",{"name":33,"username":34,"to":35,"avatar":36},"Kadiri Success","codebyquan","https://twitter.com/codebyquan",{"src":37,"alt":33},"/avatar/kadiri.jpg",{"type":39,"value":40,"toc":501},"minimark",[41,46,78,81,85,89,101,104,115,121,123,127,130,135,138,143,146,160,163,174,177,179,183,186,189,204,207,218,225,227,231,234,245,248,259,262,270,273,275,279,282,285,296,299,310,313,315,319,322,333,336,352,359,361,365,368,373,376,387,390,401,404,406,410,413,416,427,430,441,444,446,450,453,456,467,474,476,480,483,498],[42,43,45],"h2",{"id":44},"tldr","TL;DR",[47,48,49,58,65,68,75],"ul",{},[50,51,52,53,57],"li",{},"Portfolios are no longer just galleries; they’re ",[54,55,56],"strong",{},"evidence of how you work",".",[50,59,60,61,64],{},"Hiring managers care more about ",[54,62,63],{},"depth"," in a few projects than 20 tiny demos.",[50,66,67],{},"Case studies that explain trade-offs beat “tech stack badges” every time.",[50,69,70,71,74],{},"Showing how you use AI responsibly is a ",[54,72,73],{},"plus",", not a threat.",[50,76,77],{},"This portfolio is built with those expectations in mind.",[79,80],"hr",{},[42,82,84],{"id":83},"_1-what-hiring-managers-actually-do-with-your-portfolio-link","1. What hiring managers actually do with your portfolio link",[86,87,88],"p",{},"When a hiring manager or senior dev gets your portfolio link, they usually:",[90,91,92,95,98],"ol",{},[50,93,94],{},"Open it on a laptop while on another call.",[50,96,97],{},"Click 1–2 projects maximum.",[50,99,100],{},"Spend 3–5 minutes skimming.",[86,102,103],{},"They’re not trying to deeply understand everything you’ve built. They’re asking faster questions:",[47,105,106,109,112],{},[50,107,108],{},"Can this person ship a complete feature, not just a hero section?",[50,110,111],{},"Do they understand performance, accessibility and basic UX?",[50,113,114],{},"Is this codebase likely to be maintainable in 6–12 months?",[86,116,117,118,57],{},"Your portfolio has to answer these questions ",[54,119,120],{},"at a glance",[79,122],{},[42,124,126],{"id":125},"_2-depth-beats-quantity","2. Depth beats quantity",[86,128,129],{},"Instead of showing:",[47,131,132],{},[50,133,134],{},"20 small clones with no real users,",[86,136,137],{},"I focus on:",[47,139,140],{},[50,141,142],{},"2–4 projects with clear goals, real constraints and documented decisions.",[86,144,145],{},"Each project on this portfolio answers:",[47,147,148,151,154,157],{},[50,149,150],{},"What problem it solves.",[50,152,153],{},"Who it was built for.",[50,155,156],{},"What success looked like (metrics, outcomes, feedback).",[50,158,159],{},"What technical decisions were made and why.",[86,161,162],{},"Example: the Utibe & Teddy wedding client project covers:",[47,164,165,168,171],{},[50,166,167],{},"Why a fully static architecture was chosen for reliability and speed.",[50,169,170],{},"How I hit 98+ Lighthouse with optimised images and careful layout.",[50,172,173],{},"How I handled RSVPs, timeline and content updates without a complex backend.",[86,175,176],{},"That tells a much stronger story than “I know Nuxt and Tailwind”.",[79,178],{},[42,180,182],{"id":181},"_3-show-your-thinking-not-just-your-stack","3. Show your thinking, not just your stack",[86,184,185],{},"Tech stack badges (Nuxt, Vue, Tailwind, Postgres, etc.) are useful but shallow.",[86,187,188],{},"Hiring managers want to see:",[47,190,191,198,201],{},[50,192,193,194,197],{},"Trade-offs: what you ",[54,195,196],{},"didn’t"," build and why.",[50,199,200],{},"Constraints: budget, deadlines, team size, skill level.",[50,202,203],{},"Evolution: what you’d improve if you had more time.",[86,205,206],{},"On each project, I try to include sections like:",[47,208,209,212,215],{},[50,210,211],{},"“Architecture in one paragraph.”",[50,213,214],{},"“Key trade-offs and why I chose them.”",[50,216,217],{},"“What I’d change in version 2.”",[86,219,220,221,224],{},"This makes it easier for someone reading to imagine you inside ",[54,222,223],{},"their"," codebase and their constraints.",[79,226],{},[42,228,230],{"id":229},"_4-performance-reliability-and-dx-as-differentiators","4. Performance, reliability and DX as differentiators",[86,232,233],{},"In 2025, most portfolios look good visually. Few talk about:",[47,235,236,239,242],{},[50,237,238],{},"Response times.",[50,240,241],{},"Error handling.",[50,243,244],{},"Developer experience inside the repo.",[86,246,247],{},"To stand out, I surface:",[47,249,250,253,256],{},[50,251,252],{},"Lighthouse scores for key pages.",[50,254,255],{},"Caching strategy or route rules where relevant.",[50,257,258],{},"How I structure components, composables and tests.",[86,260,261],{},"For example, in my Nuxt 4 performance article, I explain:",[47,263,264,267],{},[50,265,266],{},"How image optimisation alone improved Lighthouse by 18 points.",[50,268,269],{},"How route rules and islands avoided shipping unnecessary JavaScript.",[86,271,272],{},"That shows attention to detail beyond CSS and animations.",[79,274],{},[42,276,278],{"id":277},"_5-how-i-talk-about-ai-in-my-portfolio","5. How I talk about AI in my portfolio",[86,280,281],{},"AI is part of the modern toolchain, and ignoring it looks outdated.",[86,283,284],{},"At the same time, hiring managers are nervous about:",[47,286,287,290,293],{},[50,288,289],{},"Blindly pasted AI code.",[50,291,292],{},"Security and licensing issues.",[50,294,295],{},"Candidates who can’t explain how their own code works.",[86,297,298],{},"So I aim to show:",[47,300,301,304,307],{},[50,302,303],{},"Where AI helped (boilerplate, refactors, test ideas).",[50,305,306],{},"Where I overrode AI suggestions based on context.",[50,308,309],{},"How I verify AI-generated code with tests and reviews.",[86,311,312],{},"This positions AI as a multiplier, not a crutch.",[79,314],{},[42,316,318],{"id":317},"_6-making-it-easy-to-skim-like-a-hiring-manager","6. Making it easy to skim like a hiring manager",[86,320,321],{},"I design portfolio content to be skim-friendly:",[47,323,324,327,330],{},[50,325,326],{},"Clear headings that answer specific questions.",[50,328,329],{},"TL;DR sections at the top of blog posts and case studies.",[50,331,332],{},"Short paragraphs and bullets instead of walls of text.",[86,334,335],{},"The goal:",[47,337,338],{},[50,339,340,341],{},"A busy senior dev should be able to scan a page and think:\n",[47,342,343,346,349],{},[50,344,345],{},"“Yes, this person understands trade-offs.”",[50,347,348],{},"“Yes, they’ve shipped real things under constraints.”",[50,350,351],{},"“Yes, they can probably collaborate with our team.”",[86,353,354,355,358],{},"Good formatting is not about aesthetics only; it’s about ",[54,356,357],{},"reducing cognitive load"," for the reader.",[79,360],{},[42,362,364],{"id":363},"_7-tying-portfolio-projects-back-to-business-value","7. Tying portfolio projects back to business value",[86,366,367],{},"One underrated trick:",[47,369,370],{},[50,371,372],{},"Explicitly connect technical decisions to outcomes.",[86,374,375],{},"Examples:",[47,377,378,381,384],{},[50,379,380],{},"“We chose static generation to reduce hosting cost to almost zero.”",[50,382,383],{},"“Using Cloudinary cut image payloads by 60 %, improving conversion on mobile.”",[50,385,386],{},"“We automated part of the admin workflow, saving 2–3 hours per week.”",[86,388,389],{},"This helps hiring managers map your work to:",[47,391,392,395,398],{},[50,393,394],{},"Revenue.",[50,396,397],{},"Cost savings.",[50,399,400],{},"Risk reduction.",[86,402,403],{},"and not just “cool tech”.",[79,405],{},[42,407,409],{"id":408},"_8-showing-you-can-work-with-others","8. Showing you can work with others",[86,411,412],{},"Even solo projects can demonstrate collaboration skills.",[86,414,415],{},"I try to surface:",[47,417,418,421,424],{},[50,419,420],{},"How I collected feedback from non-technical stakeholders.",[50,422,423],{},"How I documented the setup for future collaborators.",[50,425,426],{},"How I designed APIs to be friendly to other teams.",[86,428,429],{},"Signals that matter:",[47,431,432,435,438],{},[50,433,434],{},"Clear README and environment setup.",[50,436,437],{},"Useful error messages and logs.",[50,439,440],{},"Thoughtful folder structure and naming.",[86,442,443],{},"These are the same things teams look for when deciding whether you’ll make their lives easier or harder.",[79,445],{},[42,447,449],{"id":448},"_9-turning-your-portfolio-into-an-ongoing-story","9. Turning your portfolio into an ongoing story",[86,451,452],{},"Portfolios that go stale send the wrong message.",[86,454,455],{},"Instead of treating this site as a static snapshot, I use:",[47,457,458,461,464],{},[50,459,460],{},"Blog posts to document what I’m learning (like this one).",[50,462,463],{},"Case studies to share real project stories and results.",[50,465,466],{},"Small UI and performance upgrades to reflect new skills.",[86,468,469,470,473],{},"This turns the portfolio into a ",[54,471,472],{},"timeline"," of my growth, not just a one-off assignment.",[79,475],{},[42,477,479],{"id":478},"final-thoughts","Final thoughts",[86,481,482],{},"If you’re building your own portfolio right now, ask:",[47,484,485,492,495],{},[50,486,487,488,491],{},"Does this show what I can do ",[54,489,490],{},"today",", or who I was last year?",[50,493,494],{},"Can a busy hiring manager answer “why should we interview you?” in 3 minutes?",[50,496,497],{},"Am I showing how I think, or just listing tools?",[86,499,500],{},"This site is my answer to those questions—and it will keep evolving as the expectations for developers in 2025 and beyond continue to rise.",{"title":502,"searchDepth":503,"depth":503,"links":504},"",2,[505,506,507,508,509,510,511,512,513,514,515],{"id":44,"depth":503,"text":45},{"id":83,"depth":503,"text":84},{"id":125,"depth":503,"text":126},{"id":181,"depth":503,"text":182},{"id":229,"depth":503,"text":230},{"id":277,"depth":503,"text":278},{"id":317,"depth":503,"text":318},{"id":363,"depth":503,"text":364},{"id":408,"depth":503,"text":409},{"id":448,"depth":503,"text":449},{"id":478,"depth":503,"text":479},"https://codebyquan.dev/blog/what-hiring-managers-want-in-developer-portfolios-2025","Hiring manager reviewing a developer portfolio and CV on a laptop","2025-02-10T08:00:00.000Z","Beyond Dribbble shots: how I design portfolio projects so hiring managers see signal, not noise.",null,"md",true,"https://images.pexels.com/photos/1181467/pexels-photo-1181467.jpeg",{},11,{"title":26,"description":519},[528,529,530,531],"Career","Portfolio","Hiring","Product-Thinking","d_khEw1AphFX404U7naXufwURpMxm6sUtRMWlpfq_0w",[534,520],{"title":22,"path":23,"stem":24,"description":535,"children":-1},"In this post, we'll delve into the world of Vue and Nuxt, exploring the best practices and techniques for building scalable applications. From project structure to performance optimization, we'll cover it all. Whether you're a seasoned developer or just starting out, this guide will provide you with the knowledge and expertise to take your Vue and Nuxt applications to the next level.",1773445098423]