درباره موقعیت شغلیدر سپید داینامیک، روی توسعه محصولات و راهکارهای رباتیکی در حوزه رباتهای خدماتی، انساننما و چهارپا کار میکنیم. برای توسعه محصولات نرمافزاری تیم تحقیقوتوسعه، بهدنبال یک توسعهدهنده فرانتاند میدلول هستیم که مبانی فنی خوبی داشته باشد، دقیق و مسئولیتپذیر باشد و از یادگیری و مواجهه با مسائل جدید استقبال کند.
در این نقش روی توسعه و تکمیل رابطهای کاربری وب محصولات سپید داینامیک کار خواهید کرد. در شروع همکاری، زمانی برای آشنایی با کدبیس و انتقال دانش در نظر گرفته شده و با شناخت بیشتر محصول و ساختار فنی آن، بهتدریج مسئولیت بیشتری در توسعه و نگهداری فرانتاند خواهید داشت.
بخشی از مسیر توسعه محصول نیز شامل رابطهای کاربری مرتبط با تجهیزات IoT و ناوگان رباتهای خدماتی است؛ بنابراین در کنار پنلها و داشبوردهای مدیریتی، با موضوعاتی مانند نمودارها، نقشه، نمایش و بهروزرسانی دادهها و پایش وضعیت تجهیزات نیز سروکار خواهید داشت.
این موقعیت برای فردی مناسب است که در ابتدای مسیر حرفهای خود قرار دارد و در عین حال، برای یادگیری، حل مسئله و پیشبرد کارها رویکردی فعال، دقیق و مسئولانه دارد.
مسئولیتها- توسعه و نگهداری قابلیتهای فرانتاند در محصولات و پنلهای تحت وب؛
- تبدیل نیازمندیهای محصول و طرحهای اولیه به رابطهای کاربری کامل، Responsive و قابل استفاده؛
- همکاری با توسعهدهندگان بکاند برای یکپارچهسازی APIها و پیادهسازی صحیح جریانهای احراز هویت، سطح دسترسی و مدیریت خطا؛
- در نظر گرفتن و پیادهسازی حالتهای مختلف رابط کاربری، از جمله Loading، Empty State، Error State و محدودیت دسترسی؛
- حفظ هماهنگی رابطهای کاربری با ساختار و الگوهای طراحی موجود در محصول؛
- مشارکت در توسعه تجربه کاربری فارسی و انگلیسی و رعایت الزامات RTL/LTR؛
- بررسی مستندات و راهکارهای فنی مرتبط با نیازهای محصول و مشارکت در انتخاب یا پیشنهاد ابزارهای مناسب؛
- مشارکت در نگهداری و بهبود تدریجی کدبیس و پذیرفتن مسئولیت بیشتر در فرانتاند با افزایش شناخت از محصول و ساختار فنی آن.
آنچه برای این نقش ضروری است- تسلط مناسب بر مبانی JavaScript، TypeScript، React، HTML و CSS؛
- تجربه عملی کار با React در حداقل یک پروژه نسبتاً کامل، اعم از شخصی، آموزشی یا کاری؛
- آشنایی عملی با مفاهیمی مانند مدیریت State، فرمها، اعتبارسنجی، Routing و کار با REST API؛
- توانایی پیادهسازی رابطهای کاربری Responsive بر اساس نیازمندیهای محصول؛
- توانایی مطالعه و درک کد موجود و ایجاد تغییرات در آن با حفظ هماهنگی با ساختار و قراردادهای فنی پروژه؛
- توانایی اشکالزدایی با ابزارهای مرورگر و آشنایی با Git و روند توسعه مشارکتی؛
- توانایی مطالعه مستندات فنی انگلیسی و یادگیری ابزارها و مفاهیم جدید در زمان نیاز؛
- ارتباط شفاف، پذیرش بازخورد و توانایی همکاری نزدیک با توسعهدهندگان بکاند و مالک محصول؛
- مسئولیتپذیری در انجام وظایف و توانایی پیگیری مسائل و یافتن راهحل مناسب برای آنها.
انتظار نداریم در شروع همکاری همه این موارد را در سطح پیشرفته بدانید. داشتن پایه فنی مناسب، روش درست حل مسئله، دقت، مسئولیتپذیری و توانایی یادگیری برای ما مهمتر از تعداد سالهای سابقه یا آشنایی قبلی با یک کتابخانه مشخص است.
مواردی که مزیت محسوب میشوندداشتن هر یک از موارد زیر میتواند یک مزیت باشد، اما برای ارسال درخواست الزامی نیست:
- آشنایی یا تجربه در تستنویسی فرانتاند؛
- آشنایی با اصول پایه دسترسپذیری وب (Accessibility)؛
- تجربه کار با کامپوننتهای قابل استفاده مجدد، کتابخانههای UI یا مفاهیم Design System؛
- تجربه توسعه رابطهای کاربری چندزبانه و آشنایی با چالشهای RTL/LTR؛
- آشنایی با Vite، TanStack Router، Tailwind CSS، Base UI یا shadcn؛
- آشنایی یا تجربه در پیادهسازی رابطهای کاربری دادهمحور، مانند داشبوردها، نمودارها یا نقشههای تعاملی؛
- آشنایی با WebSocket، SSE یا سایر روشهای دریافت و بهروزرسانی داده بهصورت بلادرنگ (Real-time)؛
- آشنایی با محصولات یا سیستمهای مرتبط با IoT، رباتیک، مدیریت ناوگان، لجستیک یا سامانههای عملیاتی؛
- استفاده مسئولانه از ابزارهای هوش مصنوعی در فرایند توسعه، همراه با درک، بررسی و اعتبارسنجی خروجی آنها.
استک فنی فعلیدر حال حاضر فرانتاند محصول با فناوریها و ابزارهای زیر توسعه داده میشود:
React | TypeScript | Vite | TanStack Router | Tailwind CSS | Base UI | i18next | pnpm workspaces
انتخاب ابزارها و کتابخانههای جدید بر اساس نیازهای واقعی محصول و با در نظر گرفتن ساختار فنی موجود انجام میشود.
محیط همکاریدر این موقعیت، در یک تیم کوچک و نزدیک به محصول فعالیت خواهید کرد و بهصورت مستقیم با توسعهدهندگان بکاند و مالک محصول در ارتباط خواهید بود.
با افزایش شناخت از محصول و ساختار فنی آن، فرصت خواهید داشت بهتدریج مسئولیت بیشتری در توسعه فرانتاند بپذیرید و در بررسی راهکارها و تصمیمهای فنی مرتبط با این بخش مشارکت کنید.
برای ما ارتباط شفاف، مسئولیتپذیری، پذیرش بازخورد و تمایل به یادگیری و بهبود مستمر، بخش مهمی از شیوه همکاری در تیم است.