مسئولیتها
1. توسعه کلیه بخشها:
طراحی و پیادهسازی کدهای سمت کاربر (front-end) و سمت سرور (back-end) برای ایجاد یکپارچگی در سیستم.
اطمینان از یکپارچگی و هماهنگی میان بخشهای مختلف سیستم نرمافزاری.
2. مدیریت پایگاه داده:
طراحی و پیادهسازی پایگاه دادههای رابطهای (SQL) و غیررابطهای (NoSQL) برای ذخیره و مدیریت دادهها.
بهینهسازی پایگاه داده برای افزایش عملکرد و کارایی.
3. توسعه API ها و خدمات وب:
طراحی و پیادهسازی رابطهای برنامهنویسی کاربردی (APIs) و خدمات وب برای ارتباط میان بخشهای مختلف نرمافزار و سرویسهای خارجی.
4. تست و رفع اشکالات:
انجام تستهای واحد (unit tests)، یکپارچهسازی (integration tests) و کارکردی (functional tests) برای اطمینان از عملکرد صحیح سیستم.
شناسایی و رفع باگها و مشکلات فنی در هر دو بخش front-end و back-end.
5. امنیت نرمافزار:
اجرای روشها و پروتکلهای امنیتی برای محافظت از دادهها و جلوگیری از حملات امنیتی.
پیادهسازی کنترلهای دسترسی و اعتبارسنجی کاربران.
6. همکاری و ارتباطات:
همکاری با تیمهای طراحی، تجربه کاربری، DevOps و سایر توسعهدهندگان برای تضمین یکپارچگی و کیفیت بالای پروژه.
ارائه بازخورد و مشارکت در جلسات برنامهریزی و بازبینی کد.
وظایف:
1. توسعه سمت کاربر (Front-end):
نوشتن کدهای HTML، CSS و JavaScript برای ایجاد و بهبود رابطهای کاربری.
استفاده از فریمورکها و کتابخانههای محبوب مانند React، Angular یا Vue.js برای توسعه سریعتر و کارآمدتر.
2. توسعه سمت سرور (Back-end):
نوشتن کدهای سمت سرور برای مدیریت دادهها و منطق کسبوکار.
استفاده از زبانهای برنامهنویسی مناسب مانند Java, Python, Ruby, PHP یا Node.js برای توسعه نرمافزارهای سمت سرور.
3. مدیریت پایگاه داده:
طراحی و پیادهسازی جداول، روابط و شاخصها در پایگاه داده.
اجرای عملیات مدیریت پایگاه داده مانند پشتیبانگیری، بازیابی و بهینهسازی.
4. توسعه و مستندسازی API ها:
توسعه و پیادهسازی APIهای RESTful یا GraphQL برای ارتباطات داخلی و خارجی.
مستندسازی APIها برای استفاده توسط توسعهدهندگان دیگر و تیمهای مختلف.
5. تست و رفع باگها:
نوشتن تستهای واحد و تستهای یکپارچهسازی برای اطمینان از عملکرد صحیح کد.
شناسایی و رفع باگها و مشکلات فنی در کدهای front-end و back-end.
6. امنیت و مدیریت دسترسی:
پیادهسازی پروتکلهای امنیتی مانند HTTPS، JWT و OAuth برای محافظت از دادهها و اعتبارسنجی کاربران.
نظارت و بهبود امنیت سیستم به صورت مداوم.
توانمندی ها و مهارت ها
تسلط به JavaScript ES5 - ES6، Next.js Framework و TypeScript
دانش قوی در مورد Redux، JSX و Redux Toolkit
درک قوی از CSS، HTML و اصول طراحی Responsive
تجربه کار با Tailwind CSS
آشنایی با تکنیکهای SSG، SSR و برنامهنویسی Asynchronous
توانایی کار با REST API و کنترل داده
درک از WebSocket's و ارتباط Real-time
آشنایی با مفاهیم PWA و Service Worker
استفاده از از Board های TFS
آشنایی به زبان های .net core
آشنا به RESTful API
آشنا به Entity Framework
آشنا به LINUX
آشنا به SQL
آشنایی با مفاهیم OOP
شراف به مفاهیم Clean Code
آشنا به مفاهیم تست مثل Unit Test ها و Integration Test و ...
نگه داری کدها در Git
استفاده از از Board های TFS
رفع باگ ها به دلیل بکارگیری Test Automation و Automated Build و Automated Deploy
حفظ مستمر کیفیت کدها
توسعه با رویکرد TDD.
آشنایی با Message Broker ها مثل RabbitMQ.
پیاده سازی بخش جست و جو با ELK.
استفاده از Socket و ابزارهایی مثل SignalR.