هل يحتاج المبرمج الحديث إلى القدرة على إنشاء الخوارزميات؟

بعد رد فعل سلبي من مواطني خابروفسك على مقالتي الأخيرة حول مقابلة المبرمجين ، كان علي التفكير مليًا في إعادة التفكير في بعض أفكاري حول البرمجة والمبرمجين وأنا. وإلى جانب الغطرسة التي جاءت من مكان ما ، أمثلة خاملة (لم أختبره - وليس نشرًا ، هاه) ، لم أعبر على الإطلاق عن ما أردت في الأصل: الشيء الرئيسي هو القدرة على كتابة التعليمات البرمجية التي تحل المشكلة.


منذ ذلك الحين ، لم يختفِ الالتزام بالمشاركة في المقابلات الفنية مع المطورين. يظل تنسيق المقابلة كما هو: فهو يعمل مع التعليمات البرمجية في دفتر ملاحظات عبر الإنترنت ، ولكن لم يتبق سوى مهمتين وأصبحت أسهل بكثير.


هنا مثال على أحدهم:


/*   —   ,    : 1    */
function isPrimeNumber(number) {
    /*   ,  true  ,  number     false    */
}

القضية في عنوان هذه المقالة ليست بلاغية بأي شكل من الأشكال وتدين بمظهرها إلى العواطف التي تدور حول هذه المهمة في المقابلات.


القليل من المدخلات: نحن نبحث عن مكدسات كاملة تكتب بلغة JavaScript / TypeScript. يمكن أن يكون نطاق المهام ، اعتمادًا على رغبات المطور نفسه ، واسعًا جدًا: من تطوير نظام الفوترة ، إلى تطبيق سطح المكتب للرسم على لقطات الشاشة والتحميل إلى السحابة. وفقًا لذلك ، هناك حاجة إلى المعرفة الأساسية للرياضيات (زائد أو ناقص ، قسمة مضاعفة ، إيجاد المتوسط ​​الحسابي ، الحد الأدنى الأدنى في رقم) ، بالإضافة إلى القدرة على حل المشكلات التطبيقية ، والتي قد لا يكون حلها على تدفق المكدس. وفقًا للسيرة الذاتية ، نختار المرشحين على مستوى لا يقل عن الوسط ، مع خبرة عمل ذات صلة. لا يمثل التطوير على الإطلاق الأعمال الأساسية للشركة ، لذا يصعب علينا جذب مطورين أقوياء وهناك عدد قليل جدًا من هؤلاء المرشحين.


, , , , . - . , — .


, , - «». : , , , , — /, . , — , , RabbitMQ, MongoDB, / -.


« », « ». , , . , . - : « , , false, , true». .


, , , . , ( ). , :


1.


- ( ) stackoverflow, - «» .


, , stackoverflow , - , , ? , , : , , , stackoverflow .


2.


, -, . .


« », « Python», « React- » , (, ) . . , , : , React. ? «, », , , .


, . , , . - . , , .


, , , .


, - . , , , — . .


, , . . , . , , - , .


All Articles