برای سالها، رهبران کسبوکار و فناوری از ضرورت اجرای علم داده و تجزیه و تحلیل دادهها برای بهبود استراتژیهای تجاری توسط شرکتها صحبت کردهاند. تقاضا و شواهد زیادی وجود دارد که نشان میدهد مدیریت بازار با کمک هوش مصنوعی، یادگیری ماشین و مهارتهای برنامهنویسی تا حد زیادی راحتتر خواهد بود.
با این حال، برای کسانی که علاقهمند به انتخاب مسیر شغلی در حوزهی دادهها و تجزیه و تحلیل آنها هستند، انتخاب بین عناوین مختلف شغلی میتواند دلهرهآور باشد: دانشمند داده، مهندس داده، تحلیلگر داده، معمار داده. در این گزارش قصد داریم با معرفی مشاغل مهندسی داده و دانشمند داده، بررسی کنیم که علم داده و مهندسی داده چه تفاوتی با یکدیگر دارند؟
تفاوت بین علم داده و مهندسی داده
اگر آگهیهای شغلی برای دانشمندان داده و مهندسان داده را مطالعه کنید، خواهید دید که دانش، مهارتها و تحصیلات مورد نیاز برای این دو عنوان شغلی تا حد زیادی همپوشانی دارد. در واقع، ممکن است اهداف یک شرکت برای هر دوی این موقعیت شغلی، شبیه به نظر برسد. گاهی اوقات یک آگهی شغلی باعث ایجاد سردرگمی در مورد «کاری که یک دانشمند داده انجام میدهد»، یا اینکه «شرکت دقیقاً چه چیزی برای حل مشکلات دادههای خود نیاز دارد»، میشود.
بهعبارت سادهتر یک دانشمند داده، دادههایی که قبلا تمیز و سازماندهی شده را تجزیه و تحلیل میکند، به سؤالات پاسخ میدهد و معیارهایی را برای حل مشکلات تجاری ارائه میدهد. از طرف دیگر یک مهندس داده خطوط لوله (pipelines) و معماری دادهها را توسعه میدهد و آزمایش میکند. دانشمند داده از این خطوط و معماری دادهها برای تجزیه و تحلیل استفاده میکند. مهندس داده این کار را انجام میدهد تا به دانشمند داده کمک کند تا معیارهای دقیق را ارائه دهد.
مسئولیتهای مهندس داده
مهندس داده کسی است که معماریهایی مانند پایگاه داده و سیستمهای پردازش در مقیاس بزرگ را توسعه میدهد، میسازد، آزمایش میکند و نگهداری میکند. از سوی دیگر، دانشمند داده کسی است که دادهها را تمیز و سازماندهی میکند. بهطورکلی، تلاشهایی که هر دو طرف باید انجام دهند تا دادهها را به قالبی قابل استفاده تبدیل کنند، به طور قابل توجهی متفاوت است.
مهندسان داده با دادههای خامی که حاوی خطاهای انسانی، ماشینی یا ابزاری هستند سروکار دارند. دادهها ممکن است تائید نشده باشند و حاوی سوابق مشکوک باشند. این دادهها بدون قالب بوده و ممکن است حاوی کدهایی باشند که مختص سیستم است.
مهندسان داده باید راههایی را برای بهبود قابلیت اطمینان، کارایی و کیفیت دادهها پیادهسازی کنند. برای انجام این کار، آنها باید از زبانها و ابزارهای مختلفی برای تطبیق سیستمها با یکدیگر استفاده کنند یا سعی کنند فرصتهایی را برای به دست آوردن دادههای جدید از سیستمهای دیگر پیدا کنند تا برای مثال، کدهای خاص سیستم، بتوانند به اطلاعاتی در پردازش بیشتر تبدیل شوند.
مسئولیتهای دانشمند داده
دانشمندان داده معمولاً دادههایی را دریافت میکنند که دور اول پاکسازی و دستکاری را پشت سر گذاشتهاند، که میتوانند از آن برای تغذیه برنامههای تحلیلی پیچیده و یادگیری ماشینی و روشهای آماری برای آماده کردن دادهها برای استفاده در مدلسازی پیشبینیکننده و توصیه کننده استفاده کنند. البته، برای ساخت مدلها، آنها نیاز به تحقیق در مورد سؤالات صنعت و کسب و کار دارند و باید از حجم زیادی از دادهها از منابع داخلی و خارجی را برای پاسخ به نیازهای تجاری استفاده کنند. این همچنین گاهی شامل کاوش و بررسی دادهها برای یافتن الگوهای پنهان در بازارهای مختلف میشود.
برای درک بهتر تفاوت مسئولیتهای مهندسین داده و دانشمندان داده یک مثال میزنیم:
فرض کنید یک شرکت مجموعه دادههایی از مشتریان در اختیار دارد و میخواهد برای تغییر در محصولات تصمیم بگیرد. ابتدا دادهها در اختیار مهندسی داده قرار میگیرد و او با کمک زبان ماشین و برنامه نویسی، دسته بندی و سازماندهی دادهها را انجام میدهد. سپس این دادههای سازماندهی شده در اختیار دانشمند داده و یا متخصص علم داده قرار میکیرد. دانشمند داده ضمن بررسی دادهها، الگوهای بازار، شرایط شرکت و محصولات، پیشنهادات و نظرات خود را آماده میکند و به مدیران شرکت ارائه میکند.
مزایا و معایب علم داده در مقابل مهندسی داده
معمولاً از دانشمندان داده انتظار میرود که هم کار یک دانشمند داده و هم یک مهندس داده را انجام دهند. یکی از مزایای مطالعه علم داده بهجای مهندسی داده این است که آموزش یک دانشمند داده گسترده است و در نتیجه میتواند در زمینههای مختلفی فعالیت کند. شرکتی را در نظر بگیرید که بین مهندسان داده و دانشمندان داده تفاوتی قائل نیست. در این سناریو، یک دانشمند داده میتواند تمام وظایف مورد نیاز را انجام دهد، اما ممکن است از عمق دانش لازم برای انجام برخی کارها در سطح مهندس داده برخوردار نباشد.
البته، هم علم داده و هم مهندسی داده مزایای قابل توجهی دارند. مزایا و معایب هر کدام به پیشینه فردی و اهداف شغلی بستگی دارد. به عنوان مثال، یک دانشمند داده با مدرک لیسانس روانشناسی را تصور کنید که قصد فعالیت به عنوان متخصص علوم داده روانشناسی را دارد. این فرد برای کسب مهارتهای برنامهنویسی لازم و تجربه عملی برای فعالیت در زمینه علوم داده روانشناسی، باید مدرک کارشناسی ارشد در علم داده را بگیرد.
اما برای یک مهندس داده که قبلاً دارای مدرک لیسانس در علوم کامپیوتر است، ممکن است مدرک پیشرفته برای شروع کار حرفهای لازم نباشد زیرا مهندسین داده با توجه به مدرک کارشناسی کامپیوتر قادر به انجام وظایف مهندسی داده هستند.