در پست قبل (جلسه قبل) درباره موقعیتهای شغلی مختلف در حوزه دیتا ساینس صحبت کردیم. چهار نقش کلیدی که به آنها اشاره شد عبارت بودند از:
- دیتا آنالیست: مشابه بیزینس آنالیست که با دادهها سر و کار دارد.
- دیتا ساینتیست: مسیری که عموماً هدف اصلی این حوزه محسوب میشود.
- مهندس ماشین لرنینگ (ML Engineer): فردی که مدلهای یادگیری ماشین را پیادهسازی و به نرمافزارهای اتوماتیک تبدیل میکند.
- Data Engineer: مسئول زیرساخت دادهای که سه نقش قبلی برای اجرای وظایف خود به آن وابسته هستند.
البته ممکن است در سازمانها نقشهای دیگری هم وجود داشته باشد، اما این چهار نقش از رایجترینها هستند و تعاملات زیادی بین آنها وجود دارد. به عنوان مثال:
- دیتا آنالیست و دیتا ساینتیست فصل مشترک زیادی دارند.
- دیتا ساینتیست و ML Engineer نیز در حوزه مدلسازی و تحلیل دادهها همکاری تنگاتنگی دارند.
- در مقابل، ارتباط کمتری بین دیتا آنالیست و ML Engineer وجود دارد.
در اینجا قصد داریم که درباره مهارتهای کلیدی هر یک از این نقشها صحبت کنیم. برای این کار از یک Spider Chart یا چارت عنکبوتی استفاده میکنیم که به آن radar chart هم گفته می شود. مهارتهای مورد بررسی شامل موارد زیر هستند:
- دیتا پایپلاین و دیتابیس: زیرساختهای دادهای.
- بصری سازی دیتا (Data Visualization) : مصورسازی دادهها با ابزارهای مختلف.
- قصه گویی (Storytelling) : ارائه نتایج به جذابترین شکل ممکن با زبانی همسو با ادبیات کسبوکار.
- بیزینس اینسایت: درک و تحلیل تخصصی کسبوکار.
- گزارش دهی (reporting): گزارشدهی و طراحی داشبورد.
- اکسپریمنتیشن (experimentation) : اجرای آزمایشهای کنترلشده برای بررسی روابط علی و نه صرفاً همبستگی.
- آمار و مدلینگ: تحلیلهای آماری و مدلسازی دادهها.
- توسعه (Deployment) و MLOps: استقرار و توسعه مدلها و فرآیندهای نرمافزاری.
مهارتهای کلیدی برای هر نقش:
- دیتا آنالیست
دیتا آنالیستها بیشترین تمرکز را بر دیتا ویژوالیزیشن، Storytelling و ابزارهای گزارشدهی دارند. آنها باید بتوانند دادهها را تحلیل کرده و به بهترین شکل ممکن نمایش دهند. به همین دلیل مهارتهایی مثل:
- بیزینس اینسایت
- آشنایی اولیه با دیتابیسها
- تحلیل آماری مقدماتی
هم برای آنها ضروری است. این افراد معمولاً با هدف نمایش وضعیت موجود و ارائه گزارشهای مدیریتی فعالیت میکنند.
- دیتا ساینتیست
دیتا ساینتیستها بهطور تخصصی در حوزههای ماشین لرنینگ، تحلیل آماری پیشرفته و اکسپریمنتیشن فعالیت میکنند. فصل مشترک زیادی بین مهارتهای آنها و سایر نقشها وجود دارد و همین موضوع باعث میشود که موقعیت شغلی آنها از ارزش و درآمد بالایی برخوردار باشد. در مقابل، تنها بخشی که در آن تخصص کمتری دارند، زیرساختهای دادهای است که بر عهده Data Engineerها قرار دارد.
- مهندس ماشین لرنینگ (ML Engineer)
تمرکز اصلی ماشین لرنینگ انجینیرها بر استقرار مدلها، MLOps و اتوماتسازی فرآیندها است. این نقش در عین حال، اشتراک زیادی با دیتا ساینتیستها دارد و در زمینههای زیر نیز مهارت بالایی از خود نشان میدهد:
- مدلسازی الگوریتمها
- تحلیلهای آماری پیشرفته
- Data Engineer
دیتا انجینیرها مسئول طراحی و پیادهسازی زیرساختهای دادهای هستند. آنها بر دیتا پایپلاین، دیتابیس و ایجاد بستری مناسب برای پردازش و ذخیرهسازی دادهها تسلط دارند. این نقش بهعنوان پایه و اساس کار سایر اعضای تیم داده محسوب میشود.
در نتیجه، هر یک از این نقشها در بخشهای خاصی تخصص دارند و در عین حال فصلهای مشترکی بین آنها وجود دارد که همکاری و تعامل بین تیمها را امکانپذیر میکند.
طبق توضیحات بیان شده، این تقسیمبندی 360 درجهای به چهار بخش اصلی بر اساس موقعیتهای مختلف تفکیک شده است. البته باید توجه داشت که مرزبندی کاملاً دقیقی بین این نقشها وجود ندارد و اینکه کجا دیتا آنالیست و دیتاساینتیست از هم تفکیک میشوند یا وظایف چگونه بین آنها و دیگر موقعیتهای مشابه تقسیم میشود، بستگی زیادی به ماهیت تیمها، بلوغ سازمان، اندازه سازمان، تعریف پروژه و گسترهی آن دارد.
برای درک بهتر این موضوع میتوان یک فلوچارت طراحی کرد که مسیرهای تصمیمگیری را بهطور خلاصه نشان دهد. بهعنوان مثال:
- معماری داده: اگر سازمان نیاز به طراحی و پیادهسازی سلوشنهای ذخیرهسازی و دسترسی به دادهها دارد، این وظیفه بر عهدهی معمار داده (Data Architect) است.
- تحلیل دادهها: اگر معماری داده از قبل انجام شده و تمرکز بر روی نمایش وضعیت موجود، گزارشگیری و تحلیل روندها باشد، این نقش به عهدهی دادهکاو (Data Analyst) خواهد بود.
- مهندسی داده: اگر وظایف شامل نگهداری، بهروزرسانی، کنترل و مانیتورینگ زیرساختهای داده باشد، این بخش در حیطهی وظایف مهندس داده (Data Engineer) قرار میگیرد.
- مدلسازی پیشرفته و تحلیل عمیق: زمانی که نیاز به استخراج مدل، تحلیل پیشرفته دادهها و کشف روابط پیچیده وجود داشته باشد، دیتاساینتیست وارد عمل میشود. در اینجا دو حالت رخ میدهد:
- اگر مدلها نیاز به اجرا در محیط تولید (Production) و اتوماسیون دارند، این وظیفه به سمت مهندسی یادگیری ماشین (ML Engineer) گرایش پیدا میکند.
- اگر تمرکز صرفاً بر ساخت، ارتقا و بهروزرسانی مدلها باشد، این نقش بهطور کامل در حیطهی دانشمند داده قرار میگیرد.
در نتیجه، این نقشها در یک طیف بین مدیریت کسبوکار (Business Management) و توسعهی نرمافزار (Software Engineering) قرار دارند. دادهکاوها بیشتر به حوزهی مدیریتی نزدیکاند، در حالی که دانشمندان داده و مهندسان یادگیری ماشین در میانهی این طیف قرار گرفته و به دانش تخصصی عمیقتری نیاز دارند. همچنین مهندسان داده، با تمرکز بر زیرساختها، فصل مشترکی با دیگر نقشها دارند.