3️⃣ حرکت به سمت برنامه نویسی شی‌گرا و نرم‌افزارهای سیستمی

3️⃣ حرکت به سمت برنامه نویسی شی‌گرا و نرم‌افزارهای سیستمی

- مسیر برنامه‌نویسی‌اش از BASIC و اسمبلی به C و بعداً ++C بوده، و زمانی که برنامه‌نویسی شی‌گرا (OOP) رو یاد گرفته، نقطه عطفی بوده براش که ایده طراحی کد با روابط و ساختارهای منسجم و منطقی، و فراتر از چند خط کد رو بهش یاد داده.

- بعدتر در برنامه‌نویسی سیستم‌ (systems programming)، از جمله توسعه سیستم‌عامل، درایور و low-level firmware جایی بوده که حل مسائل‌ پایه‌ای و ایرادیابی‌های پیچیده رو بهش یاد داده.


4️⃣ کار با سیستم های توزیع شده

- تجربه‌ و درسی که از کار کردن با سیستم‌های توزیع‌شده به دست آورده رو مرور می‌کنه و می‌گه که پیچیدگی‌های اضافه‌ای که این سیستم‌ها برای ایرادیابی، کارآیی و پایداری همراه دارند رو چطور تونسته در عمل درک کنه. با سیستم‌های توزیع شده بوده که توسعه message-based programming و asynchronous processes رو به خوبی درک کرده.

- بر اهمیت درک سخت‌افزار و نرم‌افزار برای ایجاد زیرساخت موثر و کارآمد تاکید می‌کنه.


5️⃣ آشنایی با Continuous Integration و Agile Practices

- با نمونه‌های اولیه CI آشنا می‌شه و شروع به استفاده در فرایند توسعه می‌کنه، همچنین XP رو در اون زمان به عنوان متدولوژی توسعه در پروژه‌ها با کار می‌گیره.

- اهمیت تست نرم‌افزار، و نه فقط پیاده‌سازی رو درک کرده، و ارزش فریم‌ورک‌های تست مثل JUnit رو فهمیده.


6️⃣ ساخت سیستم‌های مستلزم کارایی بالا (High-Performance Systems)

- توضیح می‌ده که پیوستنش به یک استارتاپ برای توسعه یکی از سریع‌ترین مبادلات مالی جهان بهش کمک کرده تا آموخته‌هاش از سیستم‌های توزیع‌شده، CI و برنامه‌نویسی با عملکرد بالا رو گرد هم بیاره.

- مفهوم mechanical sympathy رو به خوبی فهمیده، اینکه چطوری سخت‌افزار روی بهینه‌سازی عملکرد نرم‌افزار تاثیر می‌گذاره


7️⃣ 💎 نکات کلیدی از مسیر شغلی

- یاد گرفته که یک رویکرد مهندسی صحیح برای توسعه نرم‌افزار است بالانس هوشمندانه‌ای بین مفاهیم انتزاعی و شناخت از سیستم‌های عملیاتی و واقعی است.

- بر اهمیت یادگیری مستمر پافشاری می‌کنه و تطبیق ابزارها و تکنیک‌های جدید، و پرورش فرهنگ توسعه مشارکتی و نوآورانه رو درس‌های مهم می‌دونه.



📌 آدمی که ۴۰ سال مداوم یاد گرفته و همین الان هم به‌روزترین مطالب رو یاد می‌گیره و یاد می‌ده این تجربه رو به اشتراک گذاشته. یاد یه مطلبی که ۲۰ سال پیش خوندم تحت عنوان how to be programmer in 10 years افتادم، زمانی‌ که کتاب‌ها مطالب رو با در ۲۴ ساعت و یا یک هفته و یک ماه می‌خواستن یاد بدن!


حرکت مداوم، پله پله و یادگیری مداوم رو فراموش نکنیم... 😉

لینک ویدیو اصلی

اگر دوست داشتید هم‌رسانی کنید