سارة دايان من ألغوليا تتحدث عن ما يميز كبير المهندسين
نشرت: 2022-08-19في حين أن مهارات الترميز الجيدة تحظى دائمًا بالتقدير ، فإن كونك موظفًا ومهندسًا يتطلب أكثر بكثير من مجرد براعتك التقنية. ما الذي يتطلبه الأمر للوصول إلى هناك ، والأهم من ذلك ، أين يمكن أن يكون لديك أكبر تأثير على مؤسستك؟
عندما تصل إلى مستوى رفيع في مسار هندسي ، فمن المتوقع أن تكون مثاليًا في مجموعة مهاراتك الصعبة. أنت مستقل ، شفرتك نقية ، ولديك فهم عميق لبرامج البناء والشحن. لكن الذهاب إلى الموظفين بالإضافة إلى الأدوار هو وحش آخر تمامًا. هناك إدارة المشروع ، والإرشاد والتدريس ، واتخاذ القرار ، وبناء العلاقات ، والقيمة التي تجلبها للشركة لم تعد تقاس بجودة سطور الكود الخاص بك ، بل من خلال دفع المؤسسة الهندسية إلى الأمام.
لقد مر ضيف اليوم بذلك. سارة دايان هي مهندسة موظفين في Algolia ، وهي عبارة عن منصة "البحث كخدمة" تساعد المطورين على بناء إمكانات الفهرس والبحث في منصاتهم الخاصة من خلال واجهة برمجة التطبيقات (API) ، ومضيف اثنين من البودكاست التقني: تجربة المطور و Entre Devs. لقد قامت بإنشاء مكتبات أمامية ، وهو الدور الذي يناسبها تمامًا نظرًا لشغفها الدائم بتجربة المستخدم والتصميم وبناء الأشياء. في الواقع ، كانت سارة مهووسة بإنشاء مواقع الويب منذ أن قام والداها بتثبيت الإنترنت واسع النطاق في قبو منزلها. كان الحب من أول نقرة. لقد جمعت أول منتدى phpBB لها في سن الخامسة عشر ، وكتبت أول صفحة HTML لها بعد ذلك بوقت قصير ، ولم تتوقف عن بناء الأشياء منذ ذلك الحين.
على الرغم من عدم حصولها على تعليم رسمي في الهندسة ، حصلت سارة على وظيفة كمطور في شركة الاستشارات الفرنسية Grand Manitou. ثم ، قبل أربع سنوات ، في عام 2018 ، حصلت على وظيفة في شركة Algolia كمهندسة برمجيات. لقد صعدت بجد من خلال الرتب ، ونمت أخيرًا إلى دور المساهم الفردي لمهندس الموظفين. وفجأة ، كل ما اهتمت به في السنوات القليلة الماضية - أن تصبح مهندسة أفضل ، وتكتب كودًا أفضل - أفسح المجال أمام تحديات جديدة. كيف ستوفر التوجيه الفني الصحيح للشركة؟ فك الاختناقات؟ مرشدة ومساعدة المهندسين الآخرين كما فعل لها الآخرون؟
في هذه الحلقة ، جلسنا مع سارة للتحدث عن العديد من الفروق الدقيقة والكفاءات والتوقعات لدور الموظفين بالإضافة إلى دور المهندس.
فيما يلي بعض النقاط السريعة المفضلة لدينا من المحادثة:
- إذا كنت لا تريد أن تتخلف عن الركب ، فاستمر في التعلم. ناقش الأفكار واحصل على تعليقات من مهندسين آخرين من وجهات نظر وخلفيات مختلفة.
- بصفتك مهندس فريق ، فإن الكثير من طاقتك تذهب إلى التعاون بين الفريق من أجل الرؤية والاستراتيجية. أين ستكون الشركة بعد خمس سنوات؟ كيف ستصل إلى هناك؟
- يسمح وجود مهندسين موظفين كموجهين لمزيد من المبتدئين بالحصول على وضوح بشأن الخطوات التي يجب اتخاذها للوصول إلى هذه الأدوار وتسرع في عملية تكوين قادة هندسيين.
- خلافًا للاعتقاد الشائع ، فإن مهندس الموظفين ليس حلاً سريعًا لمشكلة هيكلية. قبل قبول وظيفة جديدة ، اسأل عما هو متوقع منك لتجنب سوء الفهم لاحقًا.
- يجب أن يفهم مهندسو الموظفين احتياجات الشركة حتى يتمكنوا من مساعدتها في الوصول إلى أهدافها. أثناء الإعداد ، اقرأ أكبر قدر ممكن من الوثائق وتحدث مع أكبر عدد ممكن من الأشخاص.
إذا كنت تستمتع بمناقشتنا ، فتحقق من المزيد من حلقات البودكاست الخاص بنا. يمكنك المتابعة على iTunes أو Spotify أو YouTube أو الحصول على موجز RSS في المشغل الذي تختاره. ما يلي هو نسخة منقحة قليلاً من الحلقة.
لا تتوقف عن التعلم
بريان سكانلان: شكرًا جزيلاً ، سارة ، على انضمامك إلينا في العرض اليوم. يسعدني أن أحظى بفرصة التحدث معك. قبل أن نتحدث عن دورك وعملك في Algolia ، أود أن أسمع عن رحلتك حتى هذه اللحظة. كيف بدأت رحلتك إلى حيث أنت اليوم؟
سارة ديان: حسنًا ، مرحبًا ، شكرًا لاستضافتي. حسنًا ، هذه في الواقع قصة مضحكة. أبلغ من العمر حاليًا 32 عامًا ، وحصلنا على خدمة الإنترنت ذات النطاق العريض وغير المحدود في المنزل عندما كان عمري 15 عامًا. شيء أدى إلى شيء آخر ، وأنشأت أول منتدى لي مع phpBB. كانت PHP كبيرة حقًا ، ولا تزال كبيرة ، لكنها كانت بالفعل لغة الويب في ذلك الوقت.
"قررت أن هذا ليس من شأني ، وربما ينبغي أن أفعل ما أحب. لذلك ، عدت إلى ما أحببته - إنشاء مواقع الويب "
في ذلك الوقت ، لم يكن العمل في مجال التكنولوجيا ، وخاصة كمهندس برمجيات ، رائعًا وساخنًا كما هو الحال اليوم. اعتقد والداي أنني يجب أن أتطلع إلى أن أصبح صحفيًا لأنني كنت جيدًا في اللغات والأدب في المدرسة. وكان هذا أول شيء فعلته. قضيت سنتي الأولى في الصحافة ، والتي فشلت فيها تمامًا ، ثم قررت أن هذا ليس شيئًا ، ربما ينبغي أن أفعل ما أحب. لذا عدت إلى ما أحببته - بناء المواقع الإلكترونية. حصلت على وظيفتي الأولى في وكالة وقضيت ستة أعوام هناك. لقد علمتني الكثير عن الوظيفة ، عن العمل مع العملاء ، مع الأشخاص الذين يعرفون ما يريدون والأشخاص الذين لا يعرفون ماذا يريدون. ثم انتقلت إلى عالم الشركات الناشئة. أعمل على البرمجة منذ أكثر من 15 عامًا ، ولكن على المستوى المهني ، كنت أقوم بذلك لمدة 12 عامًا. وهذا ما قادني إلى دوري الحالي في Algolia. لقد أمضيت هناك أربع سنوات وما زلت آخذ في التزايد.
بريان: ممتاز. هل لديك أي دروس مثيرة للاهتمام تعلمتها في وقت مبكر وظلت عالقة معك؟
سارة: ليس لدي مسار كلاسيكي للتكنولوجيا. لم أذهب إلى كلية الهندسة ، ومن الممكن أن أحظى بمهنة رائعة في مجال التكنولوجيا إذا لم تفعل ذلك. يمكنك بالتأكيد أن تكون عصاميًا ، ويمكنك التعلم من أشخاص آخرين ، وليس عليك الحصول على درجة علمية. لكن عدم الحصول على شهادة ليس عذراً لعدم التعلم. هناك مدونة رائعة كتبتها سارة دراسنر ، مديرة هندسية في Google ، حول CSS-Tricks حول ذلك. على الرغم من أنه يمكنك الحصول على وظيفة في مجال التكنولوجيا بدون شهادة ، إلا أن ذلك لا يعفيك من التعلم والبحث عن المعرفة.
"لم أحصل على تعليقات ، لم أتحدث مع أشخاص آخرين: مع مهندسين آخرين ، وجهات نظر أخرى ، وخلفيات أخرى. ولذا فقد تخلفت "
والشيء الوحيد الذي تتعلمه بالفعل في المدرسة هو أن تتعلم ، وهذه مهارة مهمة حقًا. في بداية مسيرتي المهنية ، في الوكالة التي أخبرتك عنها ، كنت الموظف الوحيد لفترة طويلة. كنت بمفردي. وكان لدي مديري ، الذي كان يعمل أيضًا على البرمجة ولكنه كان بعيدًا قليلاً عن الأشياء التي كنت أفعلها. وعلى الرغم من أنه يمكن أن يحرر العمل بمفردك - لديك الكثير من الثقة ، والكثير من الحرية - فأنت لا تتعلم بهذه السرعة لأنه ليس لديك أي ملاحظات أو وجهات نظر أخرى بخلاف وجهة نظرك. وإذا لم تقم بأي تعليم نشط ، فسوف تتخلف عن الركب.
هذا أحد الأشياء التي حدثت لي. لم أحصل على تعليقات ، ولم أتحدث مع أشخاص آخرين: مع مهندسين آخرين ، وجهات نظر أخرى ، وخلفيات أخرى. وهكذا تخلفت. كنت أعتمد على المعرفة التي لدي ، ولم يكن لدي سبب لفعل الأشياء بشكل مختلف لأنها نجحت. سيكون هذا أحد أكبر الدروس التي تعلمتها في وقت مبكر من مسيرتي المهنية. خاصة إذا لم تكن لديك رحلة كلاسيكية في مجال التكنولوجيا ، فإن إحاطة نفسك بالأشخاص الآخرين الذين يقدمون لك التعليقات ووجهات نظرهم لا تقدر بثمن ، وسوف يعزز حياتك المهنية.
برايان: أعتقد أنها نصيحة رائعة لأي شخص في أي دور احترافي ، ولكن يبدو أنها قد نجحت بالفعل بالنسبة لك. هل تفتقد أي شيء بخصوص عدم العمل مع PHP هذه الأيام؟
سارة: أعتقد أن PHP لغة رائعة. يمكنك العثور على الكثير من الإلهام من PHP في JavaScript الحديث. لم أعد أعمل معه لأن JavaScript تطورت إلى نقطة يمكنك استخدامها أينما تريد استخدام PHP. وخاصة كمهندس واجهة أمامية ، هناك الكثير من المزايا لاستخدام نفس اللغة في الواجهة الأمامية والخلفية ، مثل المشاركة المشتركة. لكنني أعتقد أن PHP هي لغة رائعة. تحصل على الكثير من النكات السيئة و "أوه ، PHP ماتت" ، لكن عندما تنظر إلى نجاح شيء مثل Laravel ، أشعر أن PHP بعيدة كل البعد عن الموت.
عندما دخلت إلى PHP ، كان الإطار الذي يستخدمه الأشخاص الجادون يسمى Zen framework. في الواقع ، أعتقد أن Zen هي الشركة التي تقف وراء PHP ، أو على الأقل استعادتها. لم يعد أحد يستخدم إطار عمل Zen ، على الأقل ليس لأي مشروعات جديدة ، ولكن من الرائع معرفة مكان PHP الآن. لا تزال مزدهرة ، ويستمتع الناس بالبرمجة بلغة PHP ، وأعتقد أن هذا رائع. إنه ليس للجميع ، لكنك تفعل أنت. يمكن للجميع الجلوس على الطاولة باللغة التي يحبونها.
تسلق السلم الهندسي
بريان: أنت حاليًا مهندس موظفين في Algolia. أخبرني قليلاً عن هذا الدور وما الذي تعمل عليه ، وسننتقل إلى ما هو مهندس فريق.
سارة: طبعًا. أنا مهندس فريق وأعمل في الواجهة الأمامية. أنا عضو في فريق يسمى تجارب الواجهة الأمامية ، FX باختصار ، ونعمل على مكتبات الواجهة الأمامية لـ Algolia. Algolia هو محرك بحث ، لذا فهو شامل. لديك المحرك وبعض عملاء API بلغات متعددة لإرسال بياناتك للبحث ، ولكن لديك أيضًا مكتبات أمامية ، لأن من لديه الوقت لإنشاء مربع بحث يمكن الوصول إليه ، أو قائمة بالنتائج ، أو قائمة تصفية ، أو القائمة الهرمية؟
كل هذه الأشياء يصعب تنفيذها بشكل صحيح. لذلك نقوم بذلك للعملاء ، وهذا هو الفريق الذي أعمل عليه. أنا مساهم فردي (IC) ولست على أي مسار قيادة. لكن الشيء هو أنه عندما تتقدم إلى مناصب أعلى بصفتك IC ، فإن واقعك يمتزج قليلاً مع دورك القيادي. ليس لدي أي تقارير ولا أدير أي شخص ، لكنني أقضي الكثير من الوقت مع مديري في موضوعات تتعلق بشكل أكبر بالجانب البصري للأشياء. ولكني ما زلت أرمز كل يوم ، ومثل الجميع ، أقدم التعليقات وأحصل على المراجعات. لذلك لا يزال دور IC. في Algolia ، يمكنك أن تنمو إلى مستوى متقدم جدًا وأن تظل مساهمًا فرديًا يحصل على الترميز كل يوم.
"أي شيء أعلى من المستوى الأعلى وتبدأ في ضخ الكثير من الطاقة في الاستراتيجية - ما هي الرؤية ، وأين سيكون المنتج في غضون خمس سنوات ، وكيف سنكون ناجحين في هذه الأشياء؟"
براين: كم من الوقت تعتقد أنك تقضيه في الشحن مقابل بقية العمل؟ مشاركة السياق ، العمل على الإستراتيجية ، هذا النوع من الأشياء.
سارة: من الصعب قياس ذلك. أود أن أقول 50/50. هناك أوقات أقوم فيها بتشفير الكثير ، وأقوم بتضمين المراجعات في الترميز لأنها نفس الطاقة التي تستخدمها. ولكن هناك أيضًا الكثير من الوقت لوضع الإستراتيجيات ، والكثير من الاجتماعات ، والكثير من وثائق الرؤية ، والكثير من التفكير ، والكثير من المحادثات لجمع التعليقات ، مثل العمل مع مديري المشاريع والباحثين والمصممين ... كل هذا جزء من الوظيفة . في Algolia لديك كبار الموظفين ، والمدير ، وما إلى ذلك. أي شيء أعلى من كبار السن وتبدأ في ضخ الكثير من الطاقة في الاستراتيجية - ما هي الرؤية ، وأين سيكون المنتج في غضون خمس سنوات ، وكيف سننجح في هذه الأشياء؟ كيف يمكننا التأكد ، إذا لم ننجح ، لدينا خطة احتياطية؟ أي شيء يمكن أن تفكر في تطبيقه على مشروع مثل الترميز عندما تكون مهندسًا كبيرًا ، يمكنك تطبيق ذلك على استراتيجية المنتج. أنت تعمل كثيرًا على المنتج ، وهذا من أكثر الأشياء التي أحبها كثيرًا في العمل في شركة تقنية ناشئة.
عندما كنت في وكالة ، لم تقم بأي استراتيجية ، ولم تقل ما كنت تعتقده ، ولم يكن من المتوقع بالضرورة أن تقدم النصيحة. لقد فعلت ما قيل لك. ولكن عندما تكون مهندسًا في شركة ناشئة ، خاصة في تلك المستويات ، فإن صوتك ورؤيتك مهمان كثيرًا. نحن نبني منتجات للمهندسين. وعلى الرغم من أننا يجب أن نكون حريصين جدًا على عدم بناء أشياء لأنفسنا - لدينا لعنة المعرفة ، ونعرف المنتج ، ونعرف كيفية استخدامه ، ونعرف جميع المحاذير - ما زلنا حساسين لما يهتم به المهندسون حول ما يريدون وما الذي يجعل حياتهم سهلة أو صعبة. لذلك هناك تركيز كبير على المنتج ، وعلى طرح الأفكار على الطاولة ، وعلى الأفكار الصعبة ، وعلى التأكد من أنك تبني أفضل شيء يدوم.
"بعد قضاء سنوات في التفكير في كيفية أن تصبح مهندسًا أفضل ، ستحتاج إلى تحول عقلي لبدء التفكير في أشياء أخرى. كيف يمكنني مساعدة الآخرين؟ كيف يمكنني إلغاء حظر المواقف؟ "
براين: كم من الوقت تقضيه في العمل مع موظفين آخرين ومهندسين رئيسيين خارج مؤسستك أو فريقك؟ هل هذا مجتمع نشط في شركتك؟ هل يمكنك القيام بالكثير من العمل بالتعاون مع ذلك؟ هل تعمل بشكل مستقل في مجموعاتك؟ أو هل هناك مجموعة فرعية من كبار مهندسي الموظفين الآخرين الذين تعمل معهم؟
سارة: ليس بقدر ما أريد. في أي منظمة ، كلما تقدمت في المستويات ، قل عدد الأشخاص لديك. لذلك ليس الأمر كما لو كان هناك الكثير من IC خمسة ، IC ستة ، موظفون ، ومدير. نحن نوظف الكثير من كبار الموظفين في الوقت الحالي ، لذا قد تختلف إجابتي في غضون ستة أشهر. لقد أمضيت وقتًا عاديًا في التحدث مع موظفين آخرين أو حتى المهندسين الرئيسيين ، لكن الأمر ليس كما لو كان هناك أي مجتمع أو أي شيء رسمي لمجرد أننا لسنا بهذا العدد. الآن ، قضيت الكثير من الوقت في المناقشة مع كبار السن وما فوق لأن هذا جزء من دوري.
يتمثل جزء من دوري في مساعدة الأشخاص في المستويات العليا على النمو والترقية إلى مستوى الموظفين. بصفتك مهندسًا أول في العديد من الشركات ، لا سيما حجم Algolia ، فأنت تعلم ما عليك القيام به للوصول إلى هناك. إنها أكثر من قائمة مرجعية. بعد ذلك ، يصبح الأمر أكثر تعقيدًا لأن هناك الكثير من الأشياء التي يمكن أن تكون مرتبطة بالتفسير ، أشياء يمكنك القيام بها بشكل مختلف تمامًا عن شخص آخر بناءً على شخصيتك. لكن الفكرة هي أنه عندما تصل إلى مستوى رفيع ، نتوقع منك أن تكون الأفضل في مجموعة مهاراتك الصعبة. نحن نعلم أنك جيد ، وأنت في مستوى تقني معين ، ولا نتوقع منك أن تنمو أعلى من ذلك بكثير ، ولكن سيُطلب منك تطوير أنواع أخرى من المهارات.
"يجب أن نجد ما تجيده ، وما تحب أن تفعله سيساعدك على التألق وزرع ذلك. هناك الكثير من الإرشاد "
بعد قضاء سنوات في التفكير في كيفية أن تصبح مهندسًا أفضل ، أو كتابة تعليمات برمجية أفضل ، أو إجراء مراجعات أفضل ، أو الحصول على تعليقات أقل عندما تحصل على مراجعة ، ستحتاج إلى تحول عقلي لبدء التفكير في أشياء أخرى. كيف يمكنني مساعدة الآخرين؟ كيف يمكنني فتح المواقف؟ كيف يمكنني إنشاء عبء العمل الخاص بي؟ هذه ليست بالضرورة أشياء عليك التفكير فيها قبل الوصول إلى تلك المستويات. أنا أساعد الناس على الاقتراب منه ، وفهم ما يقصدونه ، وفهم أي جزء من شخصيتهم سيكونون قادرين على استخدامه للوصول إلى هناك.
يحب بعض الناس التواجد على خشبة المسرح وإجراء محادثات ، على سبيل المثال. وإذا كان هذا شيئًا يعجبهم ، بكل الوسائل ، يجب أن أساعدهم في الحصول على مشاركات أفضل في المؤتمرات وكتابة دعوة أفضل لتقديم الأوراق. ولكن إذا لم يكن هذا هو الشيء الذي تفضله ، فلا يوجد سبب يدعو للاستثمار فيه. يجب أن نجد ما تجيده ، وما تحب أن تفعله سيساعدك على التألق وتنميته. هناك الكثير من الإرشاد. هذا هو أحد الأجزاء المفضلة لدي في هذا المستوى من الأقدمية.
بالنسبة لشركة ، ليس من المثير للاهتمام حقًا أن يكون لديك موظف واحد أو مهندس كبير واحد - فأنت تريد أن يكون لديك 3 ، 5 ، 8 ، 16. والطريقة الوحيدة التي ستتمكن من القيام بذلك هي من خلال وجود الأشخاص هناك بالفعل لمساعدة الأشخاص الذين هم بمستوى واحد أقل. لا يمكنك أن تتوقع من مديرك الهندسي أن يفعل ذلك بمفرده مع الفريق بأكمله. عندما يكون لديك مهندسون يساعدون المهندسين الآخرين على القيام بالعمل الذي قاموا به قبل عام أو عامين ، يكون لديك هذا التأثير المضاعف. وأعتقد أن هذا مثير حقًا للناس لأنهم يتعلمون من الآخرين ، من الأشخاص الذين خاضوا العملية بالفعل في نفس المنظمة. هناك ثقة في أنه إذا اتبعوا هذه الخطوات ، إذا استمعوا ، فقد ينجح الأمر. أريد أن أتعلم من المهندسين الرئيسيين الذين يمكنهم مساعدتي في فهم ما يجب علي فعله للوصول إلى هناك.
إنه ممتع بشكل خاص للشخص الذي يقوم بالتدريس لأنهم يقومون بتشريح ما فعلوه بالفعل. يصبح الأمر غامضًا بعد ذلك ، وأنت مثل ، "نعم ، لقد فعلت القليل من هذا ، القليل من ذلك." لا. ماذا فعلت؟ ما هي الخطوات الملموسة التي اتخذتها؟ ما هي الأشياء التي قلت نعم لها؟ ما هي الأشياء التي قلت لا لها؟ أعتقد أنه يساعدك في توضيح أفكارك ، وتوضيح عمليتك ، ويجعلك أكثر كفاءة للأفكار التالية.
إعداد الموظفين بالإضافة إلى المهندسين
برايان: لقد ذكرت تعيين موظفين جدد ومهندسين رئيسيين في مؤسسة ، وهو أمر قد يكون صعبًا للغاية. هل هذا شيء لديك خبرة به؟
سارة: لنكون صادقين ، هذا ليس شيئًا قمنا به كثيرًا. لدينا ثلاثة أو أربعة مهندسين رئيسيين ، وجميعهم ليسوا في فريقي. الخبرة التي أمتلكها هي في الغالب جلب كبار المهندسين. الآن ، هناك أشياء مشتركة بين الجميع ، ثم هناك أشياء يمكن أن تكون مثيرة للاهتمام للمهندسين الرئيسيين ، ولا يزال بإمكاني محاولة حلها.
"يمكن لشخص كبير جدًا جدًا مساعدتك في العديد من الأشياء ، لكن لن يقوم بإصلاح المشكلات الهيكلية للشركة أو الفريق"
الوضوح مهم للغاية ، وبالطبع لا تتوقع نفس اليد عند تعيين فريق عمل أو مهندس رئيسي. تريدهم أن يكونوا مبتدئين بأنفسهم. لا يتعلق الوضوح بإخبارك بما هو متوقع منك ، وجميع المهام ، وما إلى ذلك ، ولكن بالأحرى إعطائك فكرة عن مهمتك. ما هو هدفك هنا؟ ما الذي تفعله هنا؟ وأود أن أقول أن هذا يبدأ على مستوى المقابلة. توصيتي بأن يسأل موظف أو مهندس رئيسي عن ذلك لأنه في بعض الأحيان ، يحاول الناس تعيين مناصب رفيعة جدًا لإصلاح مشاكلهم. إنهم مثل ، "أوه ، دعنا فقط نوظف شخصًا كبيرًا جدًا جدًا لأنهم يعرفون أشياء لا نعرفها." وهذا ليس صحيحا. يمكن لشخص كبير جدًا جدًا مساعدتك في العديد من الأشياء ، لكنهم لن يقوموا بإصلاح المشكلات الهيكلية للشركة أو الفريق.
وعلى الجانب الآخر ، يجب على المدير الهندسي أن يتساءل لماذا يعتقدون أنهم بحاجة إلى هذا الشخص. في معظم الأحيان ، لا توظف شخصًا على هذا المستوى لعظمة الترميز. إذا كان لديك مهندس كبير في فريقك ، فسيكون هذا هو IC أربعة في Algolia. إنهم بالفعل قادرون تمامًا على الترميز ، أو على الأقل يجب أن يكونوا كذلك. يأتي الموظف أو المهندس الرئيسي مع خبرة في شيء تريد القيام به ، وقد تحتاج إليها ، على سبيل المثال ، عندما تعلم أنك بحاجة إلى الوصول إلى مقياس لم يصل إليه أحد في الفريق من قبل. ربما يمكنك معرفة ذلك ، لكنك تريد مسرعًا ، وهذا ما سيفعله شخص كبير جدًا في فريقك.
يعد طرح هذه الأسئلة مسبقًا طريقة جيدة للتأكد من عدم وجود اختلال في ما هو متوقع. إذا كنت كبيرًا جدًا ويطلب منك الترميز أو العمل على مستوى رفيع لمجرد وجود اختلال في المحاذاة ، فستصاب بخيبة أمل ، ومن المحتمل أن تغادر. لا ترغب في قضاء الكثير من الوقت في توظيف شخص في هذا المستوى لمجرد جعله يغادر لأنه مكلف للغاية.
بعد ذلك ، أتوقع أن يقوم شخص ما في هذه الأقدمية بالكثير من القراءة وإجراء الكثير من المحادثات. هذا شيء لا تفعله عادةً عندما تكون مهندسًا مبتدئًا. أتيت إلى مؤسستك ، وتم تكليفك بمهمتك الأولى ، وهي تتدفق فقط - تبدأ العمل ، وتبدأ في البرمجة ، وهذا ما يجب عليك فعله لأن هذا هو ما سيوصلك إلى الخطوة التالية.
"يتمثل دورك في التأكد من أن المنتج الذي تم تسليمه سيكون مناسبًا وسيتوسع. ولا يمكنك فعل ذلك إذا لم تناقشه مع أشخاص آخرين في الشركة "
لكن عندما تكون في تلك المستويات العليا ، من المهم أن تفهم مكانك ، وما الذي يحدث ، ومن يفعل ماذا. أنت بحاجة إلى إنشاء علاقات ليس فقط مع المهندسين الآخرين وكبار الموظفين ، ولكن مع المزيد من الأشخاص المبتدئين ومديري المنتجات والمصممين والباحثين. أنت بحاجة إلى فهم الطريقة التي تعمل بها الشركة وكيف يمكنك أن تتلاءم مع ذلك ، وما الذي يمكنك المساعدة في تحسينه. إذا كان هناك أي وثائق داخلية مكتوبة ، فاقرأها ، وعندما تنتهي ، اقرأها مرة أخرى.
بعد ذلك ، اسأل مديرك الهندسي عن الأشخاص الذين يجب أن تلتقي بهم. في كل مرة تتحدث فيها إلى شخص جديد ، اسأله عمن يعتقد أنه سيكون ممتعًا لك للتحدث معه. سيعطيك هذا أجنحة لأنك ستنشئ علاقات وتفهم ما يحدث. ما هي المنتجات؟ ما هي النضالات الحالية؟ أين يمكنك المساعدة؟ وكيف يتناسب فريقك والمنتجات التي تبنيها مع هذا المخطط؟ لأنه في تلك المستويات ، مع هذا التركيز على المنتج ، لم يعد الأمر يتعلق فقط بجودة الكود. كبار السن في الفريق يهتمون بذلك بالفعل ، وهم يفعلون ذلك بشكل جيد للغاية. يتمثل دورك في التأكد من أن المنتج الذي تم تسليمه سيكون مناسبًا وسيتوسع. ولا يمكنك فعل ذلك إذا لم تناقشه مع أشخاص آخرين في الشركة.
تحديات جديدة
براين: بالنسبة للمستمعين الذين لا يعرفون ، تعد Algolia واجهة برمجة تطبيقات بحث مستضافة قوية. يبدو أنها شركة ناجحة جدًا من الخارج ، لكنني متأكد من وجود الكثير من التحديات والأشياء في ذهنك. هل يمكن أن تعطينا فكرة عن بعض المشاكل الكبيرة التي تفكر فيها أو تعمل عليها؟
"الفكرة هي أنه بغض النظر عن المسار الذي تسلكه للبحث عن تلك البيانات والحصول عليها والوصول إلى الصفحة ، ستظهر لك البيانات الصحيحة"
سارة: كما قلت ، فإن Algolia هي واجهة برمجة تطبيقات بحث مستضافة. هذه هي أكبر واجهة برمجة تطبيقات لدينا ، وهي الأكثر نجاحًا في الوقت الحالي ، لكننا توسعنا أيضًا قليلاً. يوجد حاليًا منتج يسمى Algolia توصية ، والذي يستخدم نفس مجموعة البيانات التي تستخدمها للبحث ، ولكن بناءً على منتج معين ، فإنه يمنحك توصيات.
لا يقتصر هدف Algolia على البحث عن المحتوى فحسب ، بل يتمثل في إظهار المحتوى. لديك الكثير من المحتوى ، ولكن ليست كلها ذات صلة في نفس الوقت لنفس الأشخاص. الفكرة هي أنه بغض النظر عن المسار الذي تسلكه للبحث عن تلك البيانات والحصول عليها والهبوط على الصفحة ، ستظهر لك البيانات الصحيحة. هذا هو الهدف من Algolia. هناك تحديات مع ذلك. نحن خبراء في البحث ، لكن التوصية وجانب التعلم الآلي هو تقنية أحدث كثيرًا ، لذلك نحن نتعلم بأحدث الأشياء. هناك الكثير لنتعلمه مقارنة بالبحث. ليس هذا هو التحدي الأكبر ، ولكن لا يزال من الصعب التأكد من أنه يمكننا تكرار نفس النجاح الذي حققناه مع البحث.
الآن ، هناك أشياء لا تجيدها Algolia. إنه محرك بحث وليس قاعدة بيانات. ستكون سريعة ، وستكون متسقة في النهاية ، لكن ليس لديك ضمان بأنك ستحصل على جميع بياناتك ، أو أن بياناتك متسقة دائمًا ، أو أن جميع بياناتك ستكون موجودة. هذا خيار تصميم حول محرك البحث ، مما يجعله مختلفًا تمامًا عن قاعدة البيانات. ومع ذلك ، يحب الكثير من الأشخاص استخدام Algolia كقاعدة بيانات لأنه من السهل جدًا إرسال البيانات إلى Algolia ، وهي موجودة ، وهي سريعة. ربما هناك شيء لنتعلمه حول ذلك. ربما يمكن أن تكون أيضًا قاعدة بيانات ، وأنا لا أقول أنها ستكون كذلك ، لكن ربما يمكن ذلك. ربما هناك شيء آخر علينا أن نفهمه ونبحث عنه.
هناك العديد من حالات الاستخدام التي لا تستطيع Algolia التعامل معها. واحد منهم هو حالة استخدام الحجز. إذا كنت ترغب في حجز Airbnb ، فعندما تبحث عنه ، ستجده في نتائجك ، مما يعني أنه متاح. ولكن بمجرد وصولك إلى الصفحة ، لم يعد متاحًا لأنك تنسخ بياناتك من قاعدة البيانات الخاصة بك إلى Algolia. عندما تحفظ شيئًا ما في قاعدة البيانات الخاصة بك ، سترسل هذا التغيير إلى Algolia بتنسيق مختلف قليلاً. ونظرًا لوجود هذا التأخير - ليس هذا في الوقت الفعلي - لا يمكن لشيء مثل حالة استخدام الحجز أن يعمل. عندما تتعامل مع Airbnbs ، قد لا يتوفر شيء ما في الوقت الحالي في غضون 30 ثانية ، ولكن قد لا يزال يظهر في محرك البحث الخاص بك لأنه عندما تقوم بالحفظ ، قد تحتاج إلى 10 ثوانٍ أو شيء من هذا القبيل ليتم نشره إلى Algolia ، وربما فشلت وتحتاج إلى القيام بذلك مرة أخرى. هذه أشياء على مستوى محرك البحث نفكر فيها. هل هو شيء يمكننا دعمه؟ هل هو وارد في السؤال؟ ما هي القضية التجارية وراء ذلك؟ لأنه يقود الكثير من الأشياء.
"يجب أن يكون غير مرئي ؛ يجب أن يكون سلسًا. حقيقة أن هذه واجهات برمجة تطبيقات منفصلة ليست مشكلتك. هذه هي مشكلتنا التي يجب حلها "
الآن ، فيما يتعلق بفريق الواجهة الأمامية ، ذكرت Algolia توصية. عندما تكون عميلاً ، فأنت لا تهتم حقًا بوجود منتجات مختلفة. لا يهمك أن يكون لديك Algolia Search بهذه الميزات و Algolia يوصى بهذه الميزات الفرعية. أنت تشترك في Algolia وتدفع رسومك الشهرية أو السنوية مقابل مجموعة من الميزات التي تم إخبارك بها تعمل بشكل جيد معًا. أنت لا تريد ولا تحتاج إلى فهم الحدود الاصطناعية التي أنشأناها داخليًا بين واجهة برمجة التطبيقات هذه وواجهات برمجة تطبيقات البيانات.
هناك هذا القول ، "لا تشحن مخططك التنظيمي" ، وأعتقد أن هذا هو أحد الموضوعات الكبيرة التالية بالنسبة لنا. كيف يمكننا التأكد ، في الواجهة الأمامية ، عندما تستخدم مكتبة Algolia للواجهة الأمامية ، ليس عليك أن تتساءل عما إذا كنت بحاجة إلى هذا أو ذاك؟ ألا تشعر بتلك الحدود؟ يجب أن يكون غير مرئي. يجب أن يكون سلسًا. حقيقة أن هذه واجهات برمجة تطبيقات منفصلة ليست مشكلتك. هذه هي مشكلتنا لحلها.
لقد أنشأنا مكتبات كانت مقترنة بقوة بواجهة برمجة تطبيقات البحث ، والآن يتعين علينا التوسع إلى واجهات برمجة تطبيقات أحدث يمكنها العمل معًا ، وأحيانًا تحتاج إلى إجراء مكالمة لأحدها ، ثم الاتصال بآخر للحصول على الرد النهائي. كل هذه الأشياء في الوقت الحالي ليست سلسة كما نود أن تكون. لا يزال الأمر صعبًا بعض الشيء على الحواف عندما تريد توصيل واجهات برمجة التطبيقات هذه معًا. هذا ممكن ، لكن عليك قراءة البرامج التعليمية ، والمتابعة ، وإجراء القليل من التغيير هنا وهناك ، وكتابة بعض التعليمات البرمجية المعيارية. هذا ليس ممتعًا ، هذا ليس ممتعًا ، وهناك الكثير من العمل. إذا أردنا إخبارك ، "استخدم تلك المكتبة" ، فإنها تحتاج إلى القيام بعمل لا تريد القيام به. لا يوجد أي مبرر لاستخدام المكتبة إذا كانت العناصر الأولية ذات المستوى الأدنى سهلة الاستخدام ، أليس كذلك؟
في الوقت الحالي ، يتمثل أحد أكبر التحديات في التأكد من رفع قيمة المكتبات. إنهم يفعلون الكثير بالفعل ولا يرغب معظم الناس في القيام به ، ولكن في مرحلة معينة ، بالنسبة لبعض العملاء ، لم يكن الأمر سلسًا وممتعًا كما كان في السابق عندما كان لدينا بحث فقط. وهذا هو الشعور الذي نسعى إليه. هذا الشعور ، "واو ، إنه أبسط بكثير مما كنت أعتقد أنه سيكون."
برايان: أخيرًا ، أين يمكن أن يذهب مستمعونا لمواكبة ما يحدث؟
سارة: يمكنك أن تجدني في الغالب على Twitter ، أنا frontstuff_io. أنا أدرك بشكل مؤلم أن هذا هو أسوأ مؤشر على Twitter. يمكنك أيضًا العثور علي على sarahdayan.com ومتابعي على GitHub إذا كنت تريد ؛ أرتكب أشياء في بعض الأحيان. لكن نعم ، إذا كنت تريد الدردشة ، فأنا أعتقد أن الرسائل المباشرة الخاصة بي مفتوحة ، لذا أرسل لي أي شيء.
بريان: ممتاز. سارة ، شكراً جزيلاً لانضمامك إلي اليوم.
سارة: شكرا لاستضافتي. كان هذا ممتعا.