محصولات شرکت تپسل ماهانه میلیاردها درخواست نمایش تبلیغات دیجیتال برای چندین میلیون کاربر آنلاین را پردازش میکنند. این محصولات بر بستر یک سیستم توزیع شده مقیاس پذیر استوار هستند، که توانایی شناسایی کاربران، ایجاد و بروز رسانی پروفایل ها، نمایش مناسبترین تبلیغ به هر کاربر در مناسبترین زمان و تشخیص لحظهای تقلب را دارا هستند. هر یک از این نیازمندی ها باید در کسری از ثانیه انجام گیرد که مستلزم استفاده از روشهای پردازش داده ویژهای در این حوزه است.
نیاز به بهبود مستمر سیستم های ارائه تبلیغات، نگهداشت و توزیع دیتای آن، منجر به توسعه تیم فنی در تپسل شده است. تیمی جوان و پویا که مسئولیت طراحی، توسعه، نگهداری، آنالیز و بهبود مستمر نرمافزارهای پیچیده و جریان انتقال داده را به عهده دارد. به عنوان عضوی از این تیم، شما با تیمهای مختلفی مانند محصول، زیرساخت و هوش مصنوعی در ارتباط خواهید بود و از تواناییهای خود برای فهم بهتر و ارزیابی کیفیت سیستم، روشهای فعلی و ارائه روشهایی برای بهبود آنها استفاده خواهید کرد.
مسئولیتهای مورد انتظار این نقش:
- مشارکت در طراحی، تولید و نگهداری نرمافزارهای پیچیده پلتفرمهای Digital Marketing
- توسعه ابزارهای جمعآوری، تبدیل، انتقال، نگهداری و ارائه داده
- توانایی خطایابی و مانیتورینگ سیستم های توزیع شده
- توسعه و نگهداری الگوریتمها serve و پردازش جریان داده در محیط واقعی
- کار تیمی انعطافپذیر با تیمهای دیگر برای پیادهسازی بهینه الگوریتمها در محیط واقعی
نیازمندیهای پذیرش این نقش:
- آشنایی با زبان برنامهنویسی java/kotlin
- تسلط به فریم ورکهای برنامه نویسی Spring شامل Spring Boot, Spring Data, Spring Cloud
- تسلط به مفاهیم برنامه نویسی شیءگرا، الگوریتمها و ساختمان دادههای پایه برای توسعه نرمافزار
- تسلط بر اصول مهندسی نرمافزار و الگوهای طراحی و معماری نرمافزار
- آشنایی با مفاهیم پایگاه داده (OLTP/OLAP/HTAP) و تکنولوژیهای پایگاه داده نظیر mongoDB، Cassandra/Scylla، ElasticSearch و Druid
- تسلط به ابزارهای Stream Processing مانند Kafka و Flink
- آشنایی با docker و آشنایی مقدماتی با Kubernetes
- آشنایی با مفاهیم CI/CD
- آشنایی با معماری های مقیاس پذیر و مقاوم در برابر خطا
- علاقه به یادگیریِ مستمرِ مفاهیم و تکنولوژی های جدید