اگر تا به حال رزومه‌ای را در یک سیستم ردیابی متقاضیان (ATS) آپلود کرده‌اید و از خود پرسیده‌اید که چرا هیچ انسانی آن را ندیده است، شما از قبل با مسئله «جعبه سیاه» در استخدام توسط هوش مصنوعی آشنا هستید. اکثر ابزارهای امتیازدهی رزومه، منطق خود را پشت داشبوردهای SaaS و ایمیل‌های رد درخواست مودبانه پنهان می‌کنند. HackerRank مسیر متفاوتی را در پیش گرفت. Hiring Agent آن متن‌باز است، به این معنی که هر کسی می‌تواند آن را کالبدشکافی کند، کدها را دنبال کند و دقیقاً ببیند که چگونه یک LLM یک فایل PDF و یک لینک GitHub را به یک عدد تبدیل می‌کند. یک توسعه‌دهنده دقیقاً همین کار را انجام داد. آنچه او یافت، یک چارچوب استخدام صیقل‌خورده نبود؛ بلکه آینه‌ای بود که به ما نشان می‌داد اتوماسیون چقدر راحت می‌تواند نظرات شخصی را به کدهای اجرایی تبدیل کند.

در لایه‌های زیرین

فرآیند پردازش به‌طور فریبنده‌ای ساده است. رزومه PDF کاندیدا به Markdown تبدیل شده، سپس به یک ساختار صلب JSON با فیلدهایی برای سوابق کاری، مهارت‌ها، تحصیلات و پروژه‌های جانبی تجزیه می‌شود. اسکریپت‌های Python داده‌ها را از مرحله‌ای به مرحله دیگر منتقل می‌کنند، اما تفکر واقعی در زنجیره‌ای از پرامپت‌ها رخ می‌دهد. هر بخش پرامپت مخصوص به خود را دارد. LLM داده‌های ساختاریافته را می‌خواند، قوانین امتیازدهی را که به زبان انگلیسی ساده نوشته شده‌اند اعمال می‌کند و یک نمره بازمی‌گرداند.

این معماری بسیار مهم است. بار اصلی کار در الگوریتم‌های هوشمند یا حلقه‌های آموزش (training loops) انجام نمی‌شود، بلکه در نحوه نگارش پرامپت‌ها نهفته است. با تغییر چند صفت در مجموعه دستورالعمل‌ها، همان مهندس می‌تواند از یک استخدام قطعی به یک کاندیدای ضعیف تبدیل شود. این موضوع ابزار را شکننده می‌کند، اما در عین حال آن را صادق می‌سازد. اکثر فروشندگان خدمات استخدام مبتنی بر هوش مصنوعی هرگز اجازه نمی‌دهند پرامپت‌ها را ببینید. نمونه اولیه HackerRank این حقیقت را فاش می‌کند که امتیازدهی رزومه همیشه بر اساس معیار ارزیابی (rubric) بوده است، نه کد.

استبدادِ ۳۵ درصد

بیشترین سوگیری در معیار ارزیابی پنهان شده است. مشارکت در پروژه‌های متن‌باز ۳۵ درصد از امتیاز کل را تشکیل می‌دهد. این وزن بسیار سنگینی است. برای درک بهتر، کل سوابق کاری، تحصیلات و مجموعه مهارت‌های یک کاندیدا باید برای کسب ۶۵ درصد باقی‌مانده، با تنها یک بخش از فعالیت‌های برنامه‌نویسی جانبی او رقابت کند.

قوانین حتی سخت‌گیرانه‌تر از آن چیزی است که وزن‌دهی نشان می‌دهد. مخازن شخصی GitHub محاسبه نمی‌شوند. نگهداری کتابخانه شخصی خودتان، هر چقدر هم که مفید باشد، امتیاز صفر می‌گیرد. این ابزار فقط مشارکت در پروژه‌های دیگران را پاداش می‌دهد. کاندیدا باید در کدبیس شخص دیگری نقش committer را داشته باشد تا آن امتیازها را کسب کند.

این اولویت، وزن جمعیت‌شناختی واقعی به همراه دارد. مهندسانی که ابزارهای خودشان را نگهداری می‌کنند، اغلب به این دلیل چنین می‌کنند که مشکلی را حل کرده‌اند که هیچ‌کس دیگری به آن نمی‌پرداخت. آن‌ها همچنین ممکن است شغل‌هایی داشته باشند که مشارکت خارجی را ممنوع می‌کند، در مناطقی کار کنند که جوامع بزرگ متن‌باز کمتری دارند، یا صرفاً تعهدات خانوادگی داشته باشند که برنامه‌نویسی رایگان در ساعات غیرکاری را غیرممکن می‌کند. ابزار با نوشتن پرامپت به این شکل، توانایی مهندسی خالص را نمی‌سنجد؛ بلکه میزان مشارکت در یک فرهنگ برنامه‌نویسی خاص را می‌سنجد و سپس آن را «عینیت» می‌نامد.

وقتی دستورالعمل‌ها بی‌اثر می‌شوند

معیار ارزیابی همچنین سعی می‌کند تجربه کار در استارتاپ‌ها را پاداش دهد. پرامپت صراحتاً پیشنهاد می‌کند که به بنیان‌گذاران و مهندسان مراحل اولیه شرکت‌ها امتیاز اضافی داده شود. این در تئوری منطقی به نظر می‌رسد؛ پیشکسوتان استارتاپی اغلب نقش‌های متعددی را ایفا می‌کنند و تحت فشار محصول را عرضه می‌کنند. بنابراین، آزمایش‌کننده یک آزمایش انجام داد. آن‌ها یک رزومه واحد را گرفتند و هیچ چیز را تغییر ندادند، جز آخرین عنوان شغلی؛ و آن را سه بار با سه برچسب مختلف از طریق agent عبور دادند: Senior Java Engineer، Founding Engineer، و Co-founder / CTO.

امتیازها تقریباً هیچ تغییری نکردند. LLM اساساً دستورالعمل را نادیده گرفت.

این یکی از مهم‌ترین یافته‌های کل این بررسی است. این موضوع ثابت می‌کند که یک قانون در پرامپت، تنها یک پیشنهاد است. مدل‌های زبانی بزرگ بر روی مجموعه‌های عظیمی از متن آموزش دیده‌اند که سوگیری‌های لجبازانه خود را درباره اینکه چه چیزی نشان‌دهنده کیفیت است، دارند. اگر داده‌های آموزشی مدل، اعتبار را به جای عبارت «founding engineer»، با عناوین، نام شرکت‌ها یا کلمات کلیدی خاصی مرتبط بداند، دستورالعمل دقیق نوشته شده شما ممکن است به سادگی بی‌اثر شود. پرامپت به مدل می‌گوید که به عناوین استارتاپی اهمیت دهد، اما مدل ایده‌های خودش را دارد و برنده است. این شکاف بین قصد انسان و رفتار ماشین، زمانی که خروجی یک امتیاز استخدامی است، خطرناک است.

امتیازهای بی‌هدف

فراتر از وزن‌دهی‌های اصلی، معیار ارزیابی پر از ریز-قوانین (micro-rules) به‌طور عجیبی خاص است که کمتر شبیه تصمیمات داده‌محور و بیشتر شبیه به جلسات طوفان فکری نیمه‌شبِ یک نفر به نظر می‌رسند.

A LinkedIn profile is worth exactly one point. Not the quality of the profile. Not the number of recommendations or the depth of the work history. Simply having a URL on the resume adds a single point to the total. Meanwhile, being a Google Summer of Code participant is worth five points. And if a candidate has forked repositories on GitHub, the agent ignores any fork with fewer than five forks of its own.

Each of these rules makes a loud value judgment disguised as a quiet coefficient. Why is LinkedIn presence worth a point at all? It signals that a candidate knows how to fill out a social network, not that they can architect a distributed system. Why is GSoC worth five times as much as a LinkedIn link? Perhaps because the prompt author respects the program. That respect is now a hiring policy. And why draw the line at five forks? A tool with ten users might solve a critical niche problem. Under this system, it might as well not exist.

These numbers do not emerge from regression analysis. They were chosen by individuals. One person decided open source participation is more than a third of an engineer’s worth. Another person decided a LinkedIn profile is worth 1 point. When you automate those guesses, you give them the authority of software.

Every Prompt Is a Prejudice

The hardest part of building a resume-scoring agent is not parsing PDFs or calling an API. It is deciding what matters. Every word in a scoring prompt is a value judgment about what makes a good engineer. Should side projects outweigh day jobs? Should public code matter more than private enterprise work? Should a social media profile matter at all? There are no mathematically correct answers to these questions. There are only cultural preferences.

When a recruiting team does this manually, at least the biases are distributed across many reviewers who can disagree, calibrate, and learn. When an LLM does it, the biases of one prompt engineer harden into a repeatable function that runs at scale. The tool does not eliminate subjectivity. It archives it.

Use It as a Mirror, Not a Filter

HackerRank’s Hiring Agent is best understood as a prototype. It feels like a first draft, which is exactly what it is. It offers a fascinating early look at how AI hiring tools are constructed, but it lacks the calibration, testing, and diverse input of a real recruiting organization.

If you are building hiring tech, study it carefully. It shows how quickly arbitrary rules turn into automated gatekeeping. If you are a candidate,remember that these systems are not oracles. They are spreadsheets dressed up in natural language, and they carry the assumptions of whoever wrote the prompts.

Until these tools are tested for bias as rigorously as the engineers they judge, they should inform human conversation, not replace it.