تفاوت بین کدر ، برنامه نویس و توسعه دهنده چیست؟
در مقاله زیر به تفاوت بین کدر ، برنامه نویس و توسعه دهنده می پردازیم .
یکی از اشکالاتی که در جوامع استارتآپی به آن برخورد کردم، نداشتن درک درست از این تخصصها است که برای یک استارتاپ بسیار مهم است که کدام تخصص را باید استخدام کند و با کدامیک شریک شود و کدام قشر را در تیم خود نیاز دارد.
اگر شما به عنوان مدیر یک استارتاپ به صورت اشتباه این تخصصها را استخدام کنید میتواند موجب شکست شما شود یا اینکه در انتهای سال اول یا دوم برای شما دردسر ساز شود.
کُدر، Coder
کدر یا coderکدنویس یا کدر به شخصی گفته می شود که می تواند کد بنویسد و مفاهیم اولیه برنامه نویسی و سینتکس های زبان برنامه نویسی که با آن کد می زند را میداند اما دیدگاه و توانایی های یک برنامه نویس را ندارد، یک کدنویس دیدگاه یک برنامه نویس را هنوز پیدا نکرده و هنوز با مفاهیم مهم همان زبان نیز آشنایی ندارد.
یک کدر در حقیقت در تلاش است که یک برنامه نویس شود. به زبان ساده یک کدر بعد از چندسال تلاش تبدیل به یک پروگرامر یا برنامه نویس می شود.
برنامه نویس، Programmer
برنامه نویس یا programmerبرنامه نویس شخصی است که مدت زمان قابل قبولی با یک زبان برنامه نویسی کدنویسی کرده و اصول زبان برنامه نویسی و منطق آن را میداند، اگر از زبانهای شیگرا استفاده میکند، کاملا با مفاهیم آن آشنایی داشته و در برنامه نویسی به درستی از آن ها استفاده می کند. یک برنامه نویس لزوما تسلط به تمامی زبانهای برنامه نویسی ندارد ولی دیدگاه درستی از کدنویسی داشته و چندسالی است که کدنویسی می کند و پروژه های نمونه که گویای سطح برنامه نویسی اوست در دست دارد.
توسعه دهنده ، Developer
دولوپر یا developerدولوپر یا توسعه دهنده یک کلمه کلی است و بعضی اوقات به صورت اشتباه توسط متخصصین استفاده میشود. به عنوان مثال: اندروید دولوپر یعنی کسی که در کمپانی گوگل در حال توسعه سیستم عامل اندروید است و جزئی از تیم توسعه اندروید است. اما اندورید اپلیکیشن دولوپر یعنی توسعه دهنده برنامه های اندرویدی که توانایی تولید اپلیکیشن را به تنهایی دارد.
توسعه دهنده نرمافزار یک شخص متخصص و با تجربه در زمینه نرم افزار است. نکته بسیار مهم در مورد دولوپرها این است که یک دولوپر شخص با تجربه ای در زمینه های مختلف است و نمی تواند یک شخص جوان باشد.
کلمه توسعه دهنده به تنهایی معنی نمیدهد و باید تخصص بعدی آن نیز بیان شود، به عنوان مثال، توسعه دهنده برنامه های اندروید یا توسعه دهنده وب یا وب دولوپر یا توسعه دهنده کرنل لینوکس.
یک توسعه دهنده حتما یک برنامه نویس عالی است و فراتر از یک برنامه نویس است. توسعه دهنده تجربه کار با تیمهای مختلف در پروژه های مختلف را داشته و در پروژه های زیادی به عنوان یک برنامه نویس فعالیت داشته.
یک توسعه دهنده نرم افزار میتواند معمولا از صفر تا صد یک پروژه را به تنهایی توسعه دهد، اگر چه در دنیای واقعی چنین اتقافی رخ نمی دهد اما نگرش وسیع توسعه دهنده باعث می شود برنامه نویسانی که در تیم با او همکاری می کنند به عنوان یک راهنما از حضور آن شخص استفاده کنند و دولوپر نیز کاملا متوجه فعالیت درست یا غلط برنامه نویسان و حتی تیم های دیگر فعال در گروه نیز می باشد.
حضور یک دولوپر در تیم های استارتاپی بسیار مهم است چرا که دولوپرها دقیقا می دانند از چه ابزاری، چه زمانی باید استفاده شود. همچنین دید بلند مدت نسبت به پروژهها داشته و در انتخاب های اولیه بسیار موثر عمل میکنند.
بر خلاف برنامه نویسان کم تجربه که علاقه بسیار زیادی به تولید کد از صفر دارند دولوپرها از کدهای آماده زیاد استفاده می کنند و این دقیقا چیزی است که یک استارتاپ در شروع کار نیاز دارد، تا با کمترین هزینه بتواند به محصول نهایی خود نزدیک شود.
سخن آخر
اگر در تیم استارتاپی خود دولوپر ندارید و یا توان مالی را برای به کارگیری یک دولوپر ندارید، سعی کنید حتما از یک دولوپر به عنوان مشاور در تیم خود استفاده کنید. تا بتوانید تشخیص دهید که در کجای راه هستید و باید به کجا بروید و آیا از ابزارها و زبانهای درستی در حال استفاده هستید یا خیر. هزینه یک مشاوره در شروع کار موجب درست جهت گرفتن فعالیت شما خواهد شد و اگر به این مهم دست پیدا نکنید در آینده نزدیک توان تغییر و بازگردانی انتخاب های اشتباه خود را نخواهید داشت.
بسیار مفید