ما در عصری زندگی میکنیم که با یک انقلاب دیجیتالی رو به رو بوده است. هسته اصلی این انقلاب، استفاده از دادههای کلان (Big Data) است. به بیان دیگر، جریان مداوم اطلاعات در حال تغییر شکل عملکرد جامعه و اقتصاد ما هستند. وجود کلان دادهها در عادات خرید روزانه ما، دسترسی به خدمات بهداشتی و درمانی، نحوه اداره کسب و کارها و البته بازار کار ما را دگرگون کرده است.
در اقتصاد داده محور دوران ما، نقشهای جدید برای هر کسب و کار در حال ظهور است. دو مورد از آنها دانشمندان داده (Data Scientist) و مهندسان داده (Data Engineer) هستند. این دو زمینه تازه در این بستر مربوط به علوم داده و مهندسی داده رشد میکنند. اما چه تفاوتی بین آنها وجود دارد و کدام یک از آنها برای شما مناسب است؟ این مهم را در ادامه این مقاله بررسی خواهیم کرد.

علم داده در مقابل مهندسی داده: تفاوت چیست؟
از آنجا که علوم داده و مهندسی دادهها حوزههای به هم مرتبط و جدیدی هستند، گاهی اوقات در مورد آنچه آنها را متمایز میکند، سردرگمی وجود دارد.
اجازه دهید برای روشن شدن سوال اصلی این مقاله؛ ابتدا معنای علم داده و مهندسی داده را به عنوان دو نقش مهم و در عین حال متمایز، در زندگی امروزه خود، بررسی کنیم.
علم داده (Data Science) چیست؟
علم داده یک گرایش بین رشتهای از مطالعه علمی است. این مهم تمرکز بر به دستآوردن بینش مناسب از مجموعه دادههای بسیار بزرگ (یا “big data”) است. دانشمندان داده ممکن است در هر تعداد صنایع، از کسب و کار آزاد تا فعالیت دولتی یا علوم کاربردی، از این دادهها بهره ببرد. با این حال، همه دانشمندان داده یک هدف مشترک دارند: تجزیه و تحلیل اطلاعات و به دست آوردن بینش از اطلاعات مربوط به زمینه کاری آنها.
به عنوان مثال
در یک کسب و کار، شرکتهای بزرگ فناوری اغلب دانشمندان داده را استخدام میکنند تا به آنها کمک کند الگوریتمهای توصیه مشتری خود را کامل کنند (یا متناسب با تجربه مشتری از راههای دیگر استفاده نمایند). صنعت مالی از علم داده برای کمک به آگاهی از ایجاد محصولات جدید استفاده میکند. در مراقبتهای بهداشتی، میتوان از کلان دادهها، برای تشخیص بیماری استفاده کرد. این لیست همچنان ادامه دارد.
در ابتدا بیشتر دانشمندان دادهها کار خود را در زمینههای مربوط به ریاضیات و آمار آغاز میکنند. سپس فعالیت آنها به مناطقی مانند تجزیه و تحلیل دادهها و یادگیری ماشین تبدیل میشوند. مهارتهای مورد نیاز از دانش علوم کامپیوتر تا تجسم اطلاعات، با توجه به ارتباطات و کسب و کار آنها، متغیر است. با این حال، دانشمندان داده همچنین به دانش فنی زیادی، مانند نحوه استفاده از معماریهای پیچیده مدلسازی دادهها، نیاز دارند. این یکی از زمینههایی است که دانشمند داده با مهندسی داده در گسترس آن، با هم همپوشانی دارد.
به طور فزاینده، بسیاری از دانشمندان دادهها در زمینههای بسیار تخصصی در حال ساخت کسب و کار مختلف هستند. این امر به دلیل طغیان اطلاعاتی که اکنون بر همه قسمتهای زندگی ما تأثیر میگذارد امکانپذیر است. در هر صنعت، تقاضا برای دانشمندان داده در حال افزایش است. به همین دلیل است که علم داده یکی از پرمخاطبترین کسب و کارهای قرن ۲۱ محسوب میشود.

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

اهمیت حضور دادهها
بدون داده، هیچ دانش دادهای وجود ندارد. با توسعه این مهم، ما به ساختارهای مناسب برای جمعآوری و ذخیره اطلاعات نیاز داریم. این یک چالش ویژه برای سازمانهای قدیمی و بزرگتر است، که معماری میراث آنها اغلب برای نیازهای قرن ۲۱ کافی نیست. به همین دلیل است که حتی اگر مهندسی داده به طور کلی “علم امروزی” در نظر گرفته نشود، جایگاه مهندسان با استعداد داده بسیار مورد تقاضا است.
مهارتهای کلیدی دانشمندان داده و مهندسان داده چیست؟
اکنون ما درک نسبتا خوبی از تفاوت دانشمندان داده و مهندسان داده داریم. حالا اجازه دهید کمی در بحث خود عمیقتر شویم و به مهارتها و مسئولیتهای اصلی هر نقش نگاه کنیم.
مهارتها و مسئولیتهای کلیدی یک دانشمند داده
اکثر دانشمندان داده در زمینههایی مانند ریاضیات یا آمار سابقه کار دارند. مهارتهای کلیدی برای یک دانشمند داده شامل:
- ریاضیات پیشرفته، آمار یا موارد مشابه (از جمله دکترا یا کارشناسی ارشد مربوطه).
- دانش دامنه، یعنی تخصص موضوع در یک زمینه خاص.
- ذکاوت عالی در تحلیل کسب و کار.
- مهارتهای پیشرفته تجزیه و تحلیل. به عنوان مثال دانش در مورد مدلهای تجزیه و تحلیل پیشبینی، تشخیصی یا احساسات و غیره.
- دانش عمیق الگوریتمهای یادگیری ماشین و هوش مصنوعی (و کاربردهای آنها).
- درک کامل از ابزارهای کلان داده، به عنوان مثال Apache Spark ،Hadoop ،SQL و غیره
- تسلط بر حداقل یک زبان برنامه نویسی، مانند Python ،R ،JavaScript یا C ++.
- مهارتهای تجسمی، ارتباطی و گزارشگری استثنایی. به عنوان مثال گزارشهای چندرسانهای، داشبورد، ارائهها.
مهارتها و مسئولیتهای اصلی یک مهندس داده
از آنجا که نقش آنها بیشتر متمرکز بر معماری نرمافزار است، مهارتهای یک مهندس داده بیشتر بر دانش لازم متمرکز است. مهارتهای کلیدی یک مهندس داده معمولا شامل موارد زیر است:
- برنامهنویسی پیشرفته به زبانهایی مانند جاوا، اسکالا و پایتون (و همچنین دانش بسیاری از زبانهای دیگر).
- دانش تخصصی محاسبات توزیعی.
- دانش سیستمهای پایگاه داده، به عنوان مثال SQL ،NoSQL، پایگاه دادههای شیگرا و غیره.
- شاید در دهها فناوری بزرگ داده، به عنوان مثال، تخصص داشته باشید. خدمات وب آمازون (AWS)، Spark ،Hadoop ،Hive ،Kafka (و سایر موارد در اکوسیستم کلان داده Apache).
- توانایی درک و ترکیب چارچوبهای مختلف و ساخت خطوط داده مناسب.
- دانش ابزارهای Extract ،Transfer ،Load (ETL) (برای ادغام دادهها از چندین منبع استفاده میشود).
- تخصص در رابطهای برنامه نویسی برنامه (API)، مورد استفاده برای اتصال برنامههای مختلف نرمافزاری.

مهارتهای مشترک بین دانشمندان داده و مهندسان داده
وقتی دو نقش از یک تمرکز مشابه برخوردار هستند (دادههای بزرگ) اجتنابناپذیر است که باید برخی مهارتهای اصلی را به صورت مشترک، داشته باشند. این همپوشانی به همین دلیل است که مهندسی دادهها اغلب در زیر چتر وسیعتری از دانش داده قرار میگیرند.
نتیجه سخن
همانطور که کلان داده فضای صنعتی قرن بیست و یکم را تغییر شکل میدهد، نقشهای جدید دائما ظاهر میشوند. این مسئله باعث میشود این دوره، زمان مهمی برای در نظر گرفتن شغل جدیدی در راستای شکل بخشیدن به کلان دادهها در نظر گرفته شود. دو مورد از این نقشهای شغلی، مهندسی داده و دانشمندان داده هستند.
در حالی که دانشمند داده و مهندسی داده نقشهای متمایزی دارند، اما از یکدیگر جدا نیستند. لذت اقتصاد نوظهور، با تکیه بر “داده” در این است که دائما در حال تغییر میباشند. با پیشرفت در مسیر شغلی منتخب خود، احتمالا مسیرهای جدیدی پیدا خواهید کرد، که قبلا در نظر نگرفتهاید اما برای پیشرفت شما ضروری هستند.