عنوان شغلی: برنامهنویس ارشد بکاند (Node.js-NestJS) – معماری SaaS
ما در حال توسعه یک پلتفرم SaaS ماژولار برای مدیریت هوشمند زنجیره تأمین چندتأمینکنندهای هستیم. این سیستم شامل ماژولهای متعدد (PIM، سفارش خرید، حملونقل، تأمینکننده، انبارداری، مالی، پیامرسانی، و غیره)، گردشکارهای پیچیده و نیازهای جدی برای امنیت، مقیاسپذیری و چندسازمانی بودن است.
شما بهعنوان برنامهنویس ارشد بکاند مسئول طراحی و توسعه هسته سیستم، ماژولهای کلیدی، معماری چندمستاجری (Multi-Tenancy)، و پیادهسازی منطق تجاری پیچیده خواهید بود.
مسئولیتها
معماری و توسعه بکاند
- توسعه ماژولها با Node.js و NestJS
- طراحی و پیادهسازی APIهای REST
- پیادهسازی معماری چندسازمانی (Multi-Tenant)
- طراحی و اجرای سیستم RBAC (سطوح دسترسی و نقشها)
- پیادهسازی منطق تجاری در ماژولهای:
- مدیریت محصول (PIM)
- تأمینکنندگان
- سفارشات خرید (PO)
- حملونقل و اسناد (Shipment)
- انبار و موجودی
- سیستم پیامرسان و اعلانها
- مالی و فاکتورها
- طراحی مدلهای دامنه و جداول پایگاهداده
- طراحی تعاملات رویدادمحور بین ماژولها (با SNS-SQS-EventBridge)
پایگاه داده (PostgreSQL)
- طراحی جداول، روابط، ایندکسگذاری و بهینهسازی کوئریها
- مدیریت مهاجرتها (Migrations)
- تضمین سازگاری و یکپارچگی دادهها
کیفیت و امنیت
- نوشتن تستهای واحد و یکپارچه
- رعایت اصول Clean Code و معماری ماژولار
- پیادهسازی امنیت API (توکنها، محدودیتها، اعتبارسنجی، لاگ)
- رعایت اصول GDPR و ایزولهسازی دادهها
همکاری و مدیریت
- همکاری نزدیک با CTO در تصمیمگیریهای فنی
- توانایی ارائه مفاهیم پیچیده با زبانی ساده برای تیم فنی و غیر فنی
- ارائه مستندات کامل شامل APIها، ماژولها، دیاگرامها
- مشارکت در تصمیمات معماری و طراحی نسخههای بعدی
- کمک به ساخت ساختار تیم بکاند در آینده
مهارتهای ضروری
فنی
- تسلط به Node.js، NestJS
- مسلط به TypeScript
- تجربه کار با Saas و Multi-tenant
- تسلط به طراحی APIهای استاندارد
- آشنایی کامل با PostgreSQL
- تجربه عملی با Docker
- توانایی طراحی معماری ماژولار و قابلگسترش
- تجربه ساخت سیستمهای دارای گردشکار پیچیده
- آشنایی با مفاهیم میکروسرویسها و معماری رویدادمحور
- تسلط به Git و تجربه کار با GitHub و GitLab
- تجربه کار با Message Brokerها
- تجربه نوشتن تستهای واحد و یکپارچه
- آشنایی با AWS (حداقل مفاهیم پایه)
- تجربه کار با Background Jobs (مثل BullMQ یا SQS Worker) برای انجام کارهایی مانند Notifications، QC یا Document parsing
- توانایی طراحی سیستم اسناد (S3-based Document Storage)
نرمافزاری و سازمانی
- مهارت بالا در حل مسئله و تحلیل ساختارمند
- توانایی تخمین کار، اولویتبندی و برنامهریزی
- مستندسازی عالی (متنی، نموداری، flowchart، جداول مقایسهای)
- مهارت ارتباطی قوی و توانایی همکاری بین تیمی
- مهارت استفاده از AI و AI Agents در توسعه (پرامپتنویسی مؤثر)
- مسئولیتپذیری و مدیریت شرایط بحران
الزامات دورکاری
- محیط کاری آرام و بدون حواسپرتی
- اینترنت پایدار با سرعت مناسب
- تجهیزات مناسب برای جلسات (میکروفون و دوربین با کیفیت)
- حضور کامل در جلسات کاری
- توانایی مدیریت شرایط اضطراری (قطع برق و یا اینترنت) در حد معقول
مهارتهایی که مزیت محسوب میشوند
- تجربه کار با سرویسهای AWS
- تجربه با Prisma یا TypeORM
- تجربه با سیستمهای مالی، فاکتور، زنجیره تأمین یا ERP
- آشنایی با CQRS
- تجربه با سیستمهای لاگینگ و مانیتورینگ
- توانایی طراحی Architecture Diagrams
- آشنایی با سیستمهای کشینگ مانند Redis
- تسلط به زبان انگلیسی
- تجربه ساخت سیستمهای لاگینگ و مانیتورینگ
آنچه ما ارائه میدهیم
- حقوق رقابتی با امکان رشد بر اساس عملکرد
- فرصت یادگیری و رشد در حوزه Cloud و معماریهای مدرن
- همکاری در پروژههای واقعی با تکنولوژیهای نسل جدید
- دورکاری کامل و ساعت کاری انعطافپذیر
- حقوق سالانه، مزایای رفاهی و طرح بازنشستگی
- محیط دوستانه، حرفهای و با فرصت رشد سریع