MAISON CODE .
/ Tech · Career · Productivity · Engineering · Philosophy · Leverage

مهندس 10x: لا يتعلق الأمر بسرعة الكتابة

أسطورة "المبرمج العبقري". واقع النفوذ والأتمتة وصنع القرار. كيفية تقديم قيمة 10x دون العمل 10x ساعات.

AB
Alex B.
مهندس 10x: لا يتعلق الأمر بسرعة الكتابة

“إنه مهندس 10x.” هذه العبارة مثيرة للجدل. وهذا يعني أن شخصًا واحدًا يساوي عشرة. يبدو متعجرفًا. ولكن في البرمجيات، النفوذ حقيقي. لا يستطيع عامل البناء أن يضع الطوب أسرع بعشر مرات من عامل آخر. الفيزياء تحدهم. يستطيع مهندس البرمجيات حل مشكلة في ساعة واحدة وتستغرق 100 ساعة أخرى (أو لا تحلها الأخرى أبدًا). ** المهندس 10x ليس كاتبًا أفضل. إنهم صانع قرار أفضل.** لا يكتبون المزيد من التعليمات البرمجية. غالبًا ما يكتبون كودًا أقل. إنهم يعرفون ما يكتبون، والأهم من ذلك، ما لا يكتبون.

لماذا تتحدث Maison Code عن هذا

في Maison Code Paris، نعمل كضمير معمari لعملائنا. غالبًا ما نرث حزمًا “حديثة” تم بناؤها دون فهم أساسي للحجم.

نناقش هذا الموضوع لأنه يمثل نقطة تحول حاسمة في النضج الهندسي. التنفيذ الصحيح يميز MVP الهش عن منصة مؤسسية مرنة يمكنها التعامل مع حركة مرور الجمعة السوداء.

لماذا تستأجر Maison Code “الكسل”

أجرينا مقابلة مع برنامج “الكسل الإنتاجي”. إذا كان أحد المرشحين يحب دليل ضمان الجودة، فإننا لا نقوم بتعيينه. نريد المرشح الذي يقول: “لقد قمت ببناء السيناريو للقيام بذلك لأنني كنت أشعر بالملل”. نحن نوظف مهندسين يكرهون عدم الكفاءة أكثر من حبهم للبرمجة. يقضي أفضل المهندسين لدينا 50% من وقتهم في بناء الأدوات لجعل الـ 50% الأخرى أسرع.

1. معادلة الرافعة المالية

$$ القيمة = (المهارة \ مرات الرافعة المالية) - الاحتكاك $$

  • المهارة: معرفة رد الفعل/بايثون.
  • التأثير: الأدوات، المكتبات، التشغيل الآلي، الذكاء الاصطناعي.
  • الاحتكاك: اجتماعات سيئة، ومواصفات غير واضحة، وديون فنية.

يركز المهندس 1x على زيادة المهارات. يركز المهندس 10x على زيادة الرافعة المالية وتقليل الاحتكاك.

2. الرهان على التجريدات الصحيحة

يقوم Junior Engineer بإنشاء 500 سطر من CSS مخصص لإنشاء زر. يقوم كبير المهندسين بتثبيت shadcn/ui وإنشاء الزر في سطر واحد. أنقذ The Senior للتو يومين من تصحيح الأخطاء عبر المتصفحات. 10x السلوك: إدراك أن “Inventory Sync” هي مشكلة تم حلها وشراء أداة، بدلاً من إنشاء نظام تخطيط موارد المؤسسات (ERP) مخصص من البداية. (راجع الإنشاء مقابل الشراء). يؤدي اختيار التجريد الخاطئ (على سبيل المثال، Redux للتبديل البسيط) إلى إضافة تأثير سلبي.

3. قوة “لا”

يقول مدير المنتج: “نحتاج إلى خط مخصص لصفحة الدفع.” يقول المهندس 1x: “حسنًا”. (يقضي 3 أيام في محاربة أخطاء CORS وتحميل الملفات غير المرغوب فيها). يقول مهندس 10x: “لا. يجب أن يكون الخروج قياسيًا من حيث الألفة والسرعة. الخطوط المخصصة ستضر بالتحويل بنسبة 1% بسبب تغير التخطيط. دعنا نلتزم بخطوط النظام.” النتيجة:

  • تم حفظ 3 أيام من وقت التطوير.
  • تم توفير 50 ​​ألف دولار من الإيرادات المفقودة.
  • القيمة الإجمالية : ضخمة . الكود الأكثر فعالية هو الكود الذي تحذفه. والثاني الأكثر كفاءة هو الكود الذي لا تكتبه أبدًا.

4. الأتمتة بدلاً من التكرار

إذا قمت بذلك مرتين، قم بذلك يدويًا. إذا قمت بذلك ثلاث مرات، فاكتب السيناريو. فضيلة الكسل: مهندس 10x يكره العمل اليدوي.

  • النشر: يكتبون خط أنابيب CI/CD. (راجع CI/CD).
  • الاختبار: يكتبون اختبارات E2E.
  • إدخال البيانات: يكتبون مكشطة بايثون. إنهم يستثمرون الوقت مقدمًا لإعادة شراء الوقت المستقبلي. هذه الفائدة المركبة للهندسة.

5. إتقان الأدوات (IDE)

شاهد عمل مهندس 10x. إنهم لا يلمسون الماوس.

  • Cmd + P: فتح الملف.
  • Cmd + Shift + F: بحث عالمي.
  • الخيار + النقر: مؤشرات متعددة. يستخدمون روابط المفاتيح Vim. يستخدمون ** المقتطفات **. يستخدمون GitHub Copilot للإكمال المعياري تلقائيًا. إنهم يتحركون بسرعة الفكر. لوحة المفاتيح ليست عنق الزجاجة. إذا قمت بتوفير ثانيتين كل دقيقة، فإنك توفر 15 يومًا في السنة.

6. الكتابة للبشر، وليس للآلات

تتم قراءة الكود 10 مرات أكثر مما هو مكتوب. يعمل مهندس 10x على تحسين سهولة القراءة.

  • سيء:
    const x = d.filter(i => i.p > 10);
  • جيد:
    const premiumProducts = data.filter(product => Product.price > 10);

يتطلب الأول من المطور التالي حرق الطاقة العقلية لفك تشفير “x”. والثاني يفسر نفسه. Clean Code هو استثمار في سرعة فريقك. إذا كان الكود الخاص بك ذكيًا، فقد فشلت. يجب أن يكون الرمز مملاً.

7. طريقة التصحيح (المنهج العلمي)

عندما يحدث خطأ:

  • 1x Engineer: يقوم بتغيير الخطوط العشوائية حتى تعمل. “أعتقد أنه ثابت.”
  • مهندس 10x:
    1. يعيد إنتاج الخطأ بشكل موثوق.
    2. يعزل المتغير.
    3. يشكل فرضية.
    4. اختبارات الإصلاح.
    5. يكتب اختبار الانحدار حتى لا يتكرر مرة أخرى*. إنهم لا يقومون بإصلاح الخلل فحسب؛ قاموا بإصلاح النظام الذي سمح بالخلل.

8. الرهان المعماري (رؤية المستقبل)

يتنبأ مهندس 10x إلى أين تتجه الكرة. في عام 2013، راهنوا على React. وفي عام 2023، يراهنون على الذكاء الاصطناعي. إنهم يختارون التقنيات التي تتمتع بزخم مجتمعي. إنهم يتجنبون “استئناف التطوير المدفوع” (باستخدام أداة متخصصة فقط لتعلمها). لقد اختاروا التكنولوجيا المملة للمسارات الحرجة (Postgres وRedis) والتقنيات المتطورة للحصول على المزايا التنافسية (AI).

9. مقياس الإرشاد

مهندس 1x الحقيقي يخلق عشرة مهندسين 1x. إنهم يوثقون كل شيء. يكتبون “لماذا” في تعليقات العلاقات العامة، وليس فقط “أصلح هذا”. إنهم يعقدون “الغداء والتعلم”. إنهم يرفعون مستوى الفريق بأكمله. إذا تركت الشركة وانهار الفريق، فقد فشلت. إذا رحلت وازدهر الفريق، فقد نجحت.

11. غرفة العمل العميق (حالة التدفق)

تبديل السياق هو العدو. إذا قمت بفحص Slack كل 10 دقائق، سينخفض ​​معدل الذكاء الخاص بك بمقدار 10 نقاط. المهندس 10x يمنع الوقت. البروتوكول:

  • 09:00 - 13:00: عمل عميق. الركود مغلقة. الهاتف مغلق.
  • 13:00 - 14:00: الغداء + الرد على الجميع.
  • 14:00 - 18:00: الاجتماعات + مراجعات الكود. إنهم يحمون “وقت صانعهم” (الصباح) من “وقت المدير” (بعد الظهر). (راجع تكلفة التوقف).

12. أسطورة المكدس الكامل (التخصص)

هل يستطيع شخص واحد إتقان CSS وReact وNode وPostgres وDocker وAWS حقًا؟ لا. غالبًا ما يكون مهندس “Full Stack” “جاكًا في جميع المهن، ولا يتقن أي شيء”. المهندس 10x يذهب ** على شكل حرف T **.

  • معرفة واسعة: يعرف ما يكفي من CSS حتى لا يفسد الأشياء.
  • المعرفة العميقة: خبير عالمي في الأنظمة الموزعة. وهم يعرفون قوتهم العظمى. يقومون بالاستعانة بمصادر خارجية للباقي.

13. آداب مراجعة القواعد (موت الأنا)

يأخذ المهندس 1x تعليقات التعليمات البرمجية شخصيًا. “أنت تكره الكود الخاص بي، لذا أنت تكرهني.” مهندس 10x ينفصل بالكامل. “صيد رائع. شكرًا لك على إنقاذي من الخطأ.” إنهم يراجعون التعليمات البرمجية من أجل التدريس، وليس المعاقبة. المبادئ التوجيهية:

  • لا تقل فقط “أصلح هذا”.
  • قل “إذا قمنا بتغيير هذا إلى خريطة، فسيصبح البحث O(1) بدلاً من O(n). التوصية: استخدم الخريطة.” ارفع مستوى المحادثة.

13. نموذج التوظيف (كيفية اكتشافهم)

نحن لا نطرح أسئلة على LeetCode (“عكس شجرة ثنائية”). نحن نطرح أسئلة العالم الحقيقي.

  • السؤال: “الموقع بطيء. أخبرني بكيفية تصحيح الأخطاء فيه.”
  • إجابة 1x: “سوف أتحقق من قاعدة البيانات.”
  • إجابة 10x: “سأتحقق من المقاييس أولاً. هل هو TTFB (الخادم) أم LCP (العميل)؟ إذا كان الخادم، فأنا أتحقق من آثار APM. وإذا كان العميل، فأنا أتحقق من حجم الحزمة.” نحن نختبر تفكير النظام. نحن نبحث عن “الندوب” (تجربة الفشل)، وليس “الشهادات”.

14. استراتيجية الاحتفاظ (الاحتفاظ بهم)

لا يمكنك الاحتفاظ بمهندس 10x بالمال (على الرغم من أنه يجب عليك الدفع أعلى من السوق). يمكنك الاحتفاظ بها من خلال الاستقلالية والتأثير.

  • سيء: “تذكرة Jira رقم 123: تحريك الزر بمقدار 3 بكسل إلى اليسار.”
  • جيد: “انخفضت نسبة التحويل بنسبة 5%. هذه هي البيانات. أصلحها.” أعطهم مشكلة، وليس مهمة. إذا قمت بإدارة مهندس 10x بشكل دقيق، فسوف يستقيل خلال شهر.

15. الاستنتاج

لا يمكنك أن تصبح مهندسًا 10x من خلال العمل 80 ساعة في الأسبوع. تصبح واحدًا عن طريق:

  1. رفض بناء أشياء عديمة الفائدة.
  2. أتمتة الأشياء المملة.
  3. تعلم أدواتك بعمق.
  4. التواصل بوضوح. إنها رياضة فكرية وليست رياضة التحمل. توقف عن الكتابة. ابدأ بالتفكير.

هل مازلت تقوم بالبرمجة يدويًا؟

نحن نصمم الثقافات الهندسية بناءً على مبادئ عالية التأثير.

ترقية فريقي. قم بتوظيف مهندسينا.