چجوری برنامه نویسی رو شروع کنم؟

چجوری برنامه نویسی رو شروع کنم؟

سخن اول:

اگر نتوانستید برنامه ریزی کنید برای شکست آماده باشید!

اگر به تازگی به برنامه نویسی و یادگرفتن آن فکر می کنید و هنوز راه خود را پیدا نکرده اید ابتدا جمله ی بالا را کاملا درک کنید! اکثر افراد برای شروع شما ایده هایی دارند اما این ایده ها اگر شامل پاسخ باشند تنها بخشی از پاسخ هستند. تنها راه یافتن پاسخ مناسب شما، جستجو و سوال پرسیدن توسط خودتان است و باید ابتدا علاقه ی خود را مشخص کنید! هدف این مقاله مشخص کردن علاقه ی شما نیست و این کار را به تنهایی باید انجام دهید و برای این کار میتوانید در شبکه های اجتماعی با تیم ما در ارتباط باشید و یا خود به جست و جوی موضوع مورد علاقه ی خود و پیدا کردن نقشه های راه(RoadMap) بپردازید.

بعد از مشخص شدن علاقمندی چکار کنم؟

اولین قدمی که باید بردارید مشخص کردن این علاقمندیست و بعد از آن با توجه به RoadMap ای که برای خود برگزیدید، یادگیری خود را شروع کنید و از مسیر دور نشوید. کلید موفقیت در پیوستگی یادگیری و از این شاخه به آن شاخه نپریدن است. حقیقت ماجرا این است که در حالت خود آموزی به صورت کلی شما به احتمال تنها 30% موفق خواهید شد تا به عنوان یک برنامه نویس کار کنید و با استفاده از آموزش های پیوسته و مناسب میتوانید شانس خود را به 72% برسانید. البته تصمیم نحوه ی یادگیری با شماست و در این مقالات به آموزش های ما و دیگر آموزش ها اشاره ای نخواهد شد.

اولین اتفاق مهم در مسیر یادگیری:

در ابتدای راه حتما گیج خواهید بود! کارکرد موضوعات مختلف هنوز برای شما مشخص نیست و به سمت دلزده شدن پیش می روید. به تازگی دارید با کدها مواجه می شوید و این مسئله می تواند در ابتدا طاقت فرسا باشد. در این مرحله شما هنوز مطمئن نیستید که چه چیزی میخواهید یاد بگیرید و مسیر شغلی آینده ی شما(ما برنامه نویسان به آن Stack میگوییم) قرار است دقیقا چگونه باشد. هر قدمی که برای شما پیچیده است را گوگل کنید و یا از کسی که با موضوع آشنایی دارد مطرح کنید و از او بپرسید. ضمنا:

قرار نیست چیزی را به خاطر بسپارید یا حفظ کنید!

از این نقطه ای که در آن هستید تا زمانی که به یک توسعه دهنده ی سطح متوسط تبدیل شوید قرار است در کار خود گیر کنید و مطمئن باشید که در ابتدا اغلب گیر کردن را تجربه می کنید. البته بعد از اینکه به سطح متوسط رسیدید باز هم گاهی با گیر کردن مواجه می شوید، سپس در سطوح بالا نیز دوباره گیر خواهید کرد!

گیر کردن بخشی از فرآیند کار یک توسعه دهنده خواهد بود پس باید از آن نترسید و نحوه ی مواجه با آن را یاد بگیرید! برای مواجه با این گیر کردن ها باید یاد بگیرید که اشکالی ندارد که جست و جو کنید و یا از دیگران سوال بپرسید. پس هر زمانی که گیر کردید مشکل را حل کنید و به کار خود ادامه دهید تا دوباره گیر کنید و دوباره تلاش کنید تا مشکل را رفع کنید و ... . این نقطه ی شروع برنامه نویس شدن شماست و بعد از این دیگر باید به عنوان یک مهارت به برنامه نویسی نگاه کنید و نه یک رویا!

نظرات منفی را مدیریت کن!

زمانی که تصمیم خود برای برنامه نویس شدن را با دیگران به اشتراک میگذارید ممکن است نظر همه ی اطرافیان شما مثبت نباشد و معمولا میبینیم که بدترین نظر منفی را خودمان به خودمان می دهیم. شاید فکر کنید باهوش نیستید و یا برنامه نویسی مناسب شما نیست اما برنامه نویسی یک مهارت است و با تکرار و تمرین در انجام آن مهارت پیدا می کنید! پس به نظرات منفی دیگران و حتی خودتان توجه نکنید!


یکی از بهترین کارآموزای من به خاطر اینکه خانوادش بهش می گفتن زیاد پای کامپیوتر نشین و برنامه نویسی آینده نداره
از ادامه ی کار منصرف شد و به جرئت میگم که اگر یادگیری و کارش رو ادامه میداد الان جزو 5% توسعه دهنده های برتر
دنیا بود!


جا نزن!

کنار نکشید! ابتدای مسیر برنامه نویسی شاید ساده به نظر بیاید ولی از اواسط راه متوجه پیچیدگی ها و سختی های برنامه نویسی می شوید! منظور از سختی های برنامه نویسی، شی گرایی و یا برنامه نویسی تابع محور نیست؛ بلکه باید با پیچیدگی ها، معماری ها و ابزار مختلف دست و پنجه نرم کنید! بسیاری از آموزش دهندگان برنامه نویسی، بوت کمپ ها و موسسات مختلف تلاش می کنند به شما رویای آسان بودن، راحت بودن یادگیری برنامه نویسی و فعالیت به عنوان یک برنامه نویس را بفروشند اما مطمئن باشید که برنامه نویسی در سطوح بالای شغلی یکی از دشوارترین مشاغل دنیاست و به خاطر همین دشواری برنامه نویسان ارشد درآمد بسیار خوبی دارند.

مبارزه با فراموشی!

موارد مختلفی که یاد میگیرید در ابتدا برای شما خیلی سخت خواهند بود و کمی زمان می برد تا چیزهایی را که یادگرفته اید بفهمید. قرار نیست یک دوره را ببینید و همه چیز ناگهان برای شما واضح شود و یک موقعیت شغلی در انتهای این دوره منتظر شما باشد. در مسیر برنامه نویسی قرار است در ابتدای مسیر با چالش های زیادی مواجه شوید و چیزهای زیادی را فراموش خواهید کرد؛ حتی در ابتدای راه خیلی موارد را بلافاصله فراموش می کنید. گاهی با یک دوره یا ویدیو شروع می کنید و بعد از دیدن آن هیچ چیزی در خاطر شما نمانده اما این مسئله عادی است! فقط یادتان باشد که به عنوان یک برنامه نویس تازه کار، گوگل بهترین دوست شماست. سرچ کردن و رفع مشکل در برنامه نویسی بخشی از کار شماست و تقلب محسوب نمی شود.


من به عنوان یک برنامه نویس ارشد تقریبا هر روز از گوگل در هنگام انجام وظایف خود استفاده می کنم.

گوگل و داکیومنت های ابزار مختلف، بهترین راهنمای من هنگام برنامه نویسی هستند.


نگران نباشید که چیزی را فراموش کرده اید و نگذارید از مسیر یادگیری منحرف شوید. در ادامه ی راه ویدیوها و دوره های ابتدایی که دیده اید برای شما آسان خواهند شد و با مشکل دیگری مواجه می شوید:

بکارگیری آموخته ها در عمل

حالا چطوری از برنامه نویسی استفاده کنم؟

میخواهید یک برنامه ی جدید را شروع کنید و به صفحه ی خالی برنامه خیره شده اید و نمیدانید از کجا باید شروع کنید؟ پس گوگل کنید! قرار است دوباره کلی نکته ی جدید یاد بگیرید و فراموش کنید و گیر کنید 😀

دنیای دیگری در انتظار شماست!

قدم بعدی شما بعد از کمی پیشروی در یادگیری باید یافتن گروه ها و دوستان برنامه نویس باشد! به این کار شبکه سازی (Netwoking) نیز گفته می شود، دورهمی های مختلف، مسابقات مختلف و چالش های مختلف، جایی برای عضویت در این گروه ها و پیدا کردن دوستان جدید است. شاید به این بخش از این مقاله اهمیت ندهید و اولین تجربیات شما از شبکه سازی به گونه ای باشد که حس کنید به آن ها تعلق ندارید و حس کنید که دیگران از شما با تجربه تر، باهوش تر و یا آنها توسعه دهنده های واقعی هستند و شما نه! باور کنید که بعد از چند بار شرکت در برنامه های مختلف و حضور در گروه های برنامه نویسی این حس شما به کلی محو خواهد شد. قرار گرفتن در این دنیای جدید به شما انگیزه ی بیشتری خواهد داد.

پروژه و رزومه و کار

یکی از چیزهایی که احتمالا خواهید شنید این است که نیاز به رزومه سازی برای پیدا کردن شغل دارید و باید برای این کار پروژه هایی را به عنوان نمونه کار داشته باشید تا استخدام شوید! اگر در ابتدای راه هستید با خود صادق باشید، هیچکس در ابتدا رزومه ی بدرد بخوری ندارد و احتمالا پروژه هایی که از پس آن بر می آیید و میخواهید با شوق و ذوق در زومه ی خود قرار دهید هم بدرد نمیخورند! اما انتظاری هم از شما نمی رود که پروژه های بدرد بخوری داشته باشید، صرفا صادق باشید و چیز را بزرگ نکنید.


به عنوان کسی که گاها مسئول مصاحبه و استخدام هستم، اکانت گیتهاب بچه ها(کارجویان) را بررسی میکنم و در مورد پروژه های آنها سوال می پرسم اما بزرگ نمایی پروژه های سطح پایین و متوسط و دروغ گفتن در مورد کارها و سطح دانش برای من نکته های منفی بزرگی در مصاحبه و حتی در زمان بررسی رزومه است. البته بدتر از آن افرادی هستند که پس از چند سال یادگیری هنوز با مشکلات خود کنار نیامده اند و به مرحله ی بعد از شروع یادگیری نمی روند!


پروژه های مختلفی که توانایی انجام آن ها را دارید شاید بدرد نخور باشند اما پویایی شما را در پیاده سازی برنامه های مختلف و علاقه به یادگیری نشان می دهند. کمی اعتماد به نفس داشته باشید و تنها پروژه هایی را در رزومه ی خود ذکر کنید که به نظر شما بیشتر نمایانگر سطح فعلی شما هستند. این پروژه ها در کنار تجربیات شغلی شما در آینده بهتر و بهتر و بهتر و ... خواهند شد.

رزومه نویسی


لطفا رزومه ی خود را کوتاه(حداکثر 2 صفحه) و خوانا و تنها شامل تجربیات و توانایی که مرتبط بنویسید! برای کسی که رزومه ی شما را بررسی می کند مهم نیست که شما برای پوزیشن برنامه نویس فرانت اند، تجربه ی برنامه نویسی میکروکنترلر را در دبیرستان داشته اید و یا قبل از شروع یادگیری برنامه نویسی در یک آژانس هواپیمایی کار می کرده اید.


برای نوشتن رزومه ی خود از دیگران مشورت بگیرید، از رزومه سازهای آنلاین و رزومه سازهای وبسایت های کاریابی استفاده کنید و ببینید که چه حالت و ساختاری برای شما بهتر است و دیگران با آن ارتباط بیشتری برقرار می کنند. نکات مثبت و منفی را استخراج کنید و در برنامه ی word یا powerpoint رزومه ی اصلی مورد نظر خود را بسازید.

ارسال رزومه

در سایت های مختلف کاریابی عضو شوید و اطلاعات خود را وارد کنید و رزومه ی خود را با فرمت PDF در آن ها آپلود کنید سپس با توجه سطح خود( کار آموز یا جونیور) رزومه ی خود را برای موقعیت های مختلفی که به نظر خود توانایی انجام آن ها را دارید ارسال کنید. در نظر داشته باشید که اکثر سایت های کاریابی به کارجویان نمره می دهند و این نمره برای کارفرما قابل مشاهده است. در صورتی که کارفرما برای شما گزارش بنویسد و یا در مصاحبه رد شوید این امتیاز کاهش می یابد و ممکن است شانس گرفتن بعضی از موقعیت های شغلی را از دست بدهید. نترسید ! فقط با دقت و گزینش شده برای هر موقعیت شغلی رزومه ی خود را ارسال کنید.

در ادامه...

دنیای بزرگی پیش روی شماست و مرحله ی بعدی شما پشت سر گذراندن مصاحبه است! در مقاله ی بعد در مورد این دنیای بزرگ بیشتر صحبت می کنیم!