يوجين كوزاك على أن تصبح مطورًا رفيع المستوى
نشرت: 2022-10-26TechBullion: كيف دخلت البرمجة؟
يوجين كوزاك: كبرت ، اكتشفت اهتمامي بالرياضيات وعلوم العلوم والتكنولوجيا والهندسة والرياضيات. لقد بدأت البرمجة بمفردي ، وبالطبع عندما أنهيت دراستي الثانوية ، كنت متأكدًا بنسبة 100٪ من أنني أريد العمل في مجال تكنولوجيا المعلومات. لذلك ، حصلت على شهادة في هندسة الكمبيوتر من أفضل جامعة في مولدوفا. قبل الدخول في البرمجة ، قمت بتجميع أكثر من 300 جهاز كمبيوتر حيث كانت شهادتي الأولى في هندسة الكمبيوتر.
TechBullion: ما هو أحد أكثر المشاريع تحديًا بالنسبة لك في البداية؟
يوجين كوزاك: حسنًا ، لا أستطيع أن أقول إنني واجهت بعض الصعوبات في البداية. ولكن كان هناك عام واحد في السنة الثالثة من مسيرتي المهنية عندما أصبحت مطورًا للواجهة الأمامية لخدمة Samsung Pay. منذ أن كنت مطور واجهة المستخدم الرائد لعروض Samsung Pay الترويجية ، كنت مسؤولاً عن كل شيء. كان لدى Samsung Pay أكثر من 15 مليون مستخدم في ذلك الوقت ، ويمكن أن تؤثر أي مشكلة أو خطأ على تجربتهم. إذا حدث خطأ ما في أي وقت ، فسيتمكن جميع المستخدمين من رؤية ذلك. لذلك كنت حريصًا جدًا وحاولت تقديم أعلى جودة ممكنة.
TechBullion: عادةً ما يتخصص الأشخاص في نطاق ضيق من لغات البرمجة. كيف انتهى بك الأمر إلى أن تكون جيدًا جدًا من حيث لغات البرمجة؟
يوجين كوزاك : عادةً ما يكون المسار الوظيفي للمطور هو ترقية من مستوى المبتدئين إلى المستوى الأعلى بمرور الوقت ، مع تحسينات في مجموعة مهاراتهم. لكن هذا لا يكفى. من المحتمل أن يعمل معظم المطورين في نفس الشركة وفي نفس المشروع لمدة عامين ، ولكن هذه ليست الطريقة التي يمكنك من خلالها أن تصبح أفضل 1٪ من المطورين. أيضًا ، لا يكون الأشخاص بالضرورة قادرين على تبديل المشاريع بسرعة كبيرة ، وإذا أرادوا الانتقال إلى شركة أخرى ، فقد يصبح هذا أمرًا صعبًا. لذلك أريد أن أقول ، هل يوجد العديد من المطورين في منطقة الراحة الخاصة بهم ، وهو أمر جيد أيضًا. في الوقت نفسه ، حتى كبار المطورين لن يكونوا دائمًا على استعداد لتحمل المسؤولية لرئاسة المشروع ، فهم يقومون فقط بمهامهم. ربما ، يتعلق الأمر بشخصية ٪ معظم الناس ببساطة لا يريدون المشاركة في الهاكاثون ، أو أن يكونوا جزءًا من العلم ، أو يبنون شيئًا يحل مشكلة في البرمجة. إنهم كسالى نوعًا ما ويبقون جيدًا في منطقة الراحة الخاصة بهم. كنت دائمًا فضوليًا ، وكانت قدرتي على تعلم عدة لغات تأتي من رغبتي في حل المشكلة بأفضل طريقة ممكنة مقابل مجرد القدرة على البرمجة بلغة أخرى.
TechBullion: هل شاركت في بعض الهاكاثونات أو سباقات البرمجة؟
يوجين كوزاك: ليس حقًا. أعلم أن العديد من المطورين يمكنهم تجربة مهاراتهم في الهاكاثون ، لكنني أعتقد أن الشيء الأكثر أهمية هو محاولة بناء أكبر عدد ممكن من المشاريع ، والعمل في بيئات مختلفة. صحيح ، غالبًا ما يرغب المطورون في إظهار مدى روعتهم للآخرين أو لأنفسهم من خلال الهاكاثونات ، ولكن بالنسبة لي ، هناك طريقة أخرى لإثبات مهاراتك وهي بناء إطار العمل الخاص بك على JS / CSS ، وجعله عامًا أو تطبيقه إطار عمل في شركة حيث تعمل. وهناك لإثبات سبب استخدام هذه الشركة لإطار العمل الخاص بك ، ولكن ليس React أو Bootstrap أو Material UI. على أي حال ، 1٪ فقط من المطورين يربحون الهاكاثون ، وإنشاء إطار عمل خاص بهم يمكن أن يبني بعض المنصات التي يمكن إعادة استخدامها لملايين المستخدمين.
TechBullion: ما هو أسرع منتج من منتجات البناء لديك؟ كيف تفاعلت مع الفريق أثناء العملية؟
يوجين كوزاك: عادة ، يعمل المطورون في بيئة أجايل ، ولديهم عدد من المهام في كل سباق (أسبوعان). ماذا تفعل إذا تم تقسيم هذه المهام على أسبوعين ، ولكن يمكنك القيام بكل شيء في 3 أيام؟ ليست كل الشركات أخلاقية لطلب المزيد من المهام لأننا متساوون ، يخطط مديرو المشاريع أيضًا لقدر من العمل لجميع المطورين. لكن كان لدي موقف حيث كنت مقاولًا لشركة كنت فيها مطورًا واحدًا فقط ، ولهذا اخترت تلك الشركة. بالنسبة لي ، لم يكن العمل على عدد صغير من المهام مثيرًا للاهتمام ، فقد أردت إنشاء تطبيق ويب لشركة بمفردي ، على سبيل المثال بدلاً من 5 مطورين. في 11 شهرًا ، قمت بإنشاء نظام CRM من البداية حتى النهاية ، كان هناك عمل API و UI و UX. تم تنفيذ هذا المشروع بسرعة كبيرة مع الكثير من الوظائف مثل إدارة المشاريع ، وتتبع المخزون ، وإنشاء الفواتير ، وإنشاء وإدارة عروض الأسعار ، وكذلك تتبع المخزون باستخدام نظام تحديد المواقع العالمي (GPS). ليس لدي معلومات محدثة ، ولكن سيتم بيع CRM هذا كاشتراك بسبب مكانة صغيرة من الأعمال: الصوتيات في البناء.
TechBullion: ما الذي يتطلبه الأمر لتصبح مطورًا من الدرجة الأولى؟
يوجين كوزاك: يمكن للعديد من المطورين الرد عليك ، فهذه التجربة هي أهم شيء إذا كنت تريد أن تكون مطورًا من الدرجة الأولى ، ولكن هذا ليس صحيحًا بالضرورة. أعرف العديد من المطورين الذين لديهم أكثر من 10 سنوات من الخبرة ، ولكن العديد من المشاريع أو المهام المعقدة المختلفة يمكن أن تشكل تحديًا بالنسبة لهم. هذا يمكن أن يفسر لماذا يستغرق شخص ما من 7 إلى 8 سنوات ليصبح مطورًا أول بينما يستغرق الأمر 4 سنوات فقط للآخرين. لذا ، فإن أفضل نهج هو تطوير قدراتك الاستثنائية ، والطريقة الصحيحة لحل المهام ، ومن ثم الخبرة. في الوقت نفسه ، من الجيد إجراء مقابلات في التطوير من أجل التوظيف: لقد أجريت أكثر من 100 مقابلة مع العديد من العملاء. كما قلت لإثبات قدراتك ومهاراتك الاستثنائية في البرمجة هو تنفيذ مشروع في إطار العمل الخاص بك في الشركة التي تعمل بها. هذا يعني أنك لا تعرف فقط لغات البرمجة وكيفية استخدام الأطر ولكن يمكنك بناء إطار العمل الخاص بك وإثبات استخدام الشركة له. بناءً على ذلك ، بناءً على إطار العمل الخاص بك ، سيتم إنشاء منتج يستخدم ملايين المستخدمين. أعتقد أن هذا يمكن أن يفعل 1٪ فقط من المطورين. على سبيل المثال ، أقوم ببناء إطار عمل واجهة المستخدم الخاص بي والذي يمكن استخدامه مع React ، الاسم هو Krypton. لم ينته بعد ولكن بالنسبة لأحد عملائي الحاليين ، أستخدم أجزاء من Krypton لبناء مشروع جديد. لذلك لا يستخدم العميل الحالي إطار العمل الخاص بي بشكل كامل ولكن جزئيًا ، ولكني آمل أن يتم الانتهاء من المشروع لهذا العميل الخاص بي ، وسيتم بناء أكثر من 60 ٪ من المشروع على Krypton. أيضًا ، من النصائح الجيدة لتكون مطورًا من الدرجة الأولى أن تكتب منشورات علمية في مجلات مهنية ، لدي أكثر من 25 منها. أيضًا ، أجريت أكثر من 100 مراجعة لمقالات الأقران ، لأنك بصفتك مطورًا ، لا تحتاج إلى أن تكون جزءًا من البرمجة فحسب ، بل يجب أن تكون أيضًا جزءًا من العلم.
TechBullion: ما هي أقوى مهاراتك؟
يوجين كوزاك: أود أن أقول ، القدرة على الانضمام إلى أي مشروع في أي إطار زمني. كنت في مواقف مختلفة منذ أن بدأت المشروع من البداية أو انضممت عندما كان المشروع قيد التقدم. تمنحك العديد من الشركات وقتًا يتراوح من أسبوعين إلى ثلاثة أسابيع لفهمه ، وعادةً ما يستغرق الأمر يومين. يستطيع المطورون ذوو القدرات الاستثنائية فهم أي مشروع والبدء في إصلاح المشكلات أو تنفيذ المهام في أيام وليس أسابيع. كما يمكنني العمل في 4 مشاريع في نفس الوقت. أفترض أن 1٪ فقط من المطورين يمكنهم فعل ذلك ، أعني جميع أنواع المطورين من المبتدئين إلى قادة التكنولوجيا. لدي خبرة في العمل في 2 و 3 و 4 مشاريع في نفس الوقت ، وتقديم نتائج جيدة جدًا ، علاوة على ذلك ، في كل منهم ، أنا على الأقل كبير أو قائد فريق لما يقرب من 4 مطورين. أيضًا ، في هذا المستوى ، يجب أن تكون قادرًا على توجيه مطورين آخرين من المبتدئين إلى الكبار. للعمل أيضًا بسرعة كبيرة ليس فقط في المشاريع اليومية ولكن أيضًا لبناء شيء مثل إطار عمل مفتوح المصدر ، وكتابة المنشورات العلمية ، وما إلى ذلك. جودة. سرعة. تنويع.
TechBullion: ما هي اللغة التي كانت تمثل التحدي الأكبر بالنسبة لك؟
يوجين كوزاك: لا أعتقد أن أي إطار عمل أو لغة يمثل تحديًا كبيرًا ، فبمجرد أن تعرف لغة برمجة واحدة ، يكون الآخرون نوعًا ما متشابهين لديهم فقط بعض القواعد الأخرى ، أو يمكن أن يكون لإطار العمل ميزات أقل أو أكثر. لمطور قدرات استثنائية لا يوجد أي لغة برمجة صعبة.