کد تنها راه حل نیست. و 8 درس دیگر توسعه ، 7 سال بعد

من به مدت 7 سال به عنوان یک توسعه دهنده نرم افزار کار می کنم. پیشینه من و چگونگی ورود به صنعت را می توانید در اینجا بخوانید. چند نکته وجود دارد که کاش زودتر یاد می گرفتم. دانستن این موارد از قبل کار من را بسیار آسان می کرد. برخی از اینها ممکن است کاملاً واضح به نظر برسد ، اما برای من اینگونه نیست. اگر در مراحل اولیه شغلی خود هستید ، انجام چند مورد از این موارد باعث برجستگی شما می شود.

1. ما باید مکان مناسبی برای کار برای

شرکت و افرادی که برای آنها کار می کنید تأثیر زیادی در عشق یا متنفر بودن شغل خود بگذاریم. همه شرکت ها به طور یکسان ایجاد نشده و کار نمی کنند. آنچه برای شخص دیگری مفید بود ممکن است به کابوس شما تبدیل شود. چگونه مکان مناسب خود را پیدا کنیم؟ آزمایش.

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

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

در 4 سال اول ، 3 شرکت را عوض کردم. مکان فعلی که در آن کار می کنم مکان چهارم من است و 3 سال اینجا هستم. در اوایل کار خود شروع به آزمایش کنید. در مورد مکانی که قصد دارید به آن بپیوندید از اطراف س Askال کنید. با شرکت های مختلف مصاحبه کنید و یکی از موارد مناسب خود را انتخاب کنید. سن گرایی در صنعت ما نقش زیادی دارد. هر چه پیرتر می شوید مکان هایی که حتی می توانید مصاحبه کنید نیز کاهش می یابد. وقتی در مراحل اولیه هستید از شانس خود استفاده کنید.

2. مهارت های فنی تنها بخشی از معادله

  • با افراد تیم ها / پروژه های مختلف صحبت کنید و به آنها کمک کنید.
  • کنجکاو باشید و یاد بگیرید که چگونه کار تجاری انجام می شود و همه تیم ها چگونه کار می کنند برای تولید چیزی با هم همکاری کنید.
  • پست های وبلاگ را بنویسید و آنها را با همتایان سازمان خود به اشتراک بگذارید.
  • برای کمک به یک فن آوری خاص به شخص اصلی تبدیل شوید
  • مشارکت در منبع باز و آن را در میان همسالان خود به اشتراک بگذارید
  • در کنفرانس ها شرکت کنید / صحبت کنید.

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

    3. عناوین اهمیت دارند

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

  • عنوان شما تصمیم می گیرد در کدام اتاق می توانید حضور داشته باشید و کدام یک نمی توانید. هنگام تصمیم گیری درباره چیزهای مهم ، افراد داخل اتاق می توانند روی آن تأثیر بگذارند. آنها همچنین از مزیت اطلاعات داخلی برخوردار هستند.
  • عناوین به شما اعتبار درون و خارج از سازمان شما را می دهند. اگر عنوان بهتری داشته باشید ، مردم شما را جدی می گیرند.
  • در بعضی جاها ، برای عنوان یک سقف حقوق و دستمزد دارند. هنگام مذاکره برای افزایش بعدی خود بدون ارتقا ، مشکل ساز است.

    4. ارتباطات

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

  • پرسیدن س questionsال های صحیح
  • گوش دادن
  • جمع آوری افکار و بیان خوب آنها
  • خوب نوشتن

    افرادی که هم در مهارتهای فنی و هم در مهارتهای ارتباطی تبحر دارند رشد خواهند کرد.

    5. شبکه

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

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

    6. مهارت مذاکره مهم است

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

  • مذاکره برای منابع بیشتر با مدیر پروژه.
  • مذاکره برای زمان بیشتر برای یک ویژگی با مشتری. < / li>
  • در حال مذاکره با همکار خود در مورد اجرای فعلی یک ویژگی. Psst: من قبل از این در مورد نکات مربوط به مذاکره درباره دستمزد برای توسعه دهندگان نوشتم.

    7. کد تنها راه حل نیست

    در ابتدا ، من به کدی که نوشتم بسیار افتخار می کردم. من ناراحت شدم اگر این تجارت می خواست تغییرات اساسی ایجاد کند یا چیزی را که قبلاً نوشتم حذف کند. من فکر کردم کد یک دارایی است و ارزش بالایی را برای آن قائلیم. چقدر ساده لوحانه؟ کد شما به تنهایی هیچ ارزشی ندارد. برای اینکه ارزشمند باشد باید به منزله محسوسی باشد.

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

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

    8. انطباق با نیازهای شغلی

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

    برخی از تصمیمات مهم فنی وجود دارد که می تواند تجارت را از بین ببرد یا از بین ببرد و شما باید در آنجا موضع بگیرید. اما در بیشتر موارد ، الزامات تجاری باید بیش از هر چیز دیگری ارجحیت داشته باشند.

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

    9. کاربران خود را تماشا کنید

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

    هنگامی که در مورد کاربران خود اطلاعات کسب کردید ، از این دانش برای بهبود برنامه خود استفاده کنید. شما می توانید بر تصمیمات طراحی ، بهبود عملکرد و قابلیت استفاده تأثیر بگذارید. در بیشتر موارد ، کاربران همیشه سعی می کنند از نرم افزار شما متفاوت از آنچه تصور می کنید استفاده کنند. داشتن این دانش قطعاً شما را نسبت به بقیه متمایز می کند.

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

    همچنین در اینجا منتشر شده است.