شرکت داده گستران هوشمند جامع هوباد
شرکت داده گستران هوشمند جامع هوباد

توسعه‌دهنده بک‌اند (Backend Developer)

تهران، داوودیه
تمام وقت
شنبه تا جهارشنبه از 7 تا 16
-
-
51 تا 200 نفر
فناوری اطلاعات / نرم افزار و سخت افزار
توضیحات بیشتر

شاخص های کلیدی از نظر کارفرما

3 سال سابقه کار در گروه شغلی مشابه

شرح شغل و وظایف

توسعه‌دهنده بک‌اند (Backend Developer)

کارشناس بک‌اند (BackEnd Developer) متخصصی است که بخش سرور و منطق پشت‌صحنه یک وب‌سایت یا برنامه کاربردی را طراحی و توسعه می‌دهد. این نقش شامل مدیریت پایگاه داده، ایجاد APIها، و اطمینان از عملکرد صحیح و کارآمد سیستم‌ها است. کارشناس بک‌اند نقش حیاتی در اتصال بخش فرانت‌اند با سرور و پردازش داده‌ها دارد.

شرح وظایف کارشناس بک‌اند

1. طراحی و توسعه سرور:

·        ایجاد منطق برنامه و کدنویسی سرور برای مدیریت درخواست‌های ورودی و ارسال پاسخ به فرانت‌اند.

·         توسعه و نگهداری سرویس‌های بک‌اند با استفاده از Java و Spring Boot.

·        طراحی و بهینه‌سازی پایگاه داده‌های PostgreSQL، TimescaleDB یا Cassandra.

·          کار با پروتکل‌های IoT (مثل MQTT، CoAP، HTTP) برای ارتباط با دستگاه‌ها.

·        پیاده‌سازی API‌های REST و gRPC برای ارتباط با سیستم‌های دیگر.

·          یکپارچه‌سازی سیستم‌ها با سرویس‌های خارجی و Third-Party.

·        اطمینان از امنیت، مقیاس‌پذیری و بهینه‌سازی عملکرد سیستم.

·        همکاری با تیم DevOps برای استقرار و مدیریت محیط تولید.

·        پیاده‌سازی ساختارهای قابل توسعه و مقیاس‌پذیر.

2. مدیریت پایگاه داده:

·        طراحی، توسعه و نگهداری پایگاه داده‌ها (SQL یا NoSQL).

·        نوشتن کوئری‌های بهینه و مدیریت ارتباط بین جداول یا ساختارهای داده.

3. ایجاد و مدیریت APIها:

·        طراحی و پیاده‌سازی APIهای RESTful یا GraphQL برای ارتباط بین سرور و کلاینت.

·        ایجاد و مدیریت مستندات API برای استفاده تیم‌های فرانت‌اند و سایر توسعه‌دهندگان.

4. تضمین امنیت سیستم:

·        پیاده‌سازی پروتکل‌های امنیتی برای محافظت از داده‌ها و جلوگیری از حملات سایبری.

·        مدیریت فرآیندهای احراز هویت و مجوزدهی (Authentication و Authorization).

5. بهینه‌سازی عملکرد سیستم:

·        بهینه‌سازی کد سرور و پایگاه داده برای پاسخ‌گویی سریع‌تر.

·        استفاده از روش‌های Caching و Load Balancing برای مدیریت بار سیستم.

6. رفع اشکال و نگهداری:

·        شناسایی و رفع باگ‌ها و مشکلات نرم‌افزاری.

·        ارتقاء سیستم و به‌روزرسانی آن برای انطباق با نیازهای جدید.

7. کار با تکنولوژی‌های ابری و DevOps:

·        استفاده از ابزارهای CI/CD برای استقرار مداوم.

8. همکاری تیمی:

·        کار با تیم‌های فرانت‌اند، DevOps و مدیریت پروژه برای اطمینان از هماهنگی میان بخش‌های مختلف سیستم.

9. مستندسازی:

·        تهیه مستندات فنی و ثبت تغییرات در کدها برای استفاده آتی.

مهارت‌های مورد نیاز برای کارشناس بک‌اند

مهارت‌های فنی:

1. زبان‌های برنامه‌نویسی:

·        تسلط بر زبان‌های بک‌اند مانند Python (Django, Flask)، JavaScript (Node.js)، Java (Spring Boot)، PHP (Laravel)، 

2. پایگاه داده:

·        آشنایی با پایگاه داده‌های رابطه‌ای (PostgreSQL) و غیررابطه‌ای (مانند MongoDB,casand، Redis).

3. کار با APIها:

·        طراحی و پیاده‌سازی APIهای RESTful و GraphQL.

·        مدیریت مستندات API با ابزارهایی مانند Swagger یا Postman.

4. امنیت سیستم:

·        آشنایی با اصول امنیتی مانند جلوگیری از حملات XSS، CSRF و SQL Injection.

·        استفاده از پروتکل‌های رمزنگاری مانند HTTPS و JWT.

5. فریم‌ورک‌ها و ابزارها:

·        تسلط بر فریم‌ورک‌های بک‌اند مناسب زبان انتخابی (مانند Express.js، Django، یا Laravel).

·        آشنایی با ابزارهای مدیریت نسخه کد مانند Git.

6. پلتفرم‌های ابری و DevOps:

·        آشنایی با ابزارهای CI/CD مانند ، GitLab CI، یا Docker. Kubernetes

7. ساختار داده و الگوریتم:

·         درک اصول ساختار داده و الگوریتم‌ها برای بهینه‌سازی منطق برنامه.

8. بهینه‌سازی سیستم:

·         دانش در بهینه‌سازی پایگاه داده و استفاده از تکنیک‌های Caching (مانند Redis یا Memcached).

9.  آشنایی با پروتکل‌های IoT مانند MQTT و CoAP.

آشنایی با موارد ذیل مزیت محسوب میشود 

تجربه کار با TimescaleDB یا Apache Kafka.

 آشنایی با ابزارهای نظارت و لاگ‌گیری مثل Prometheus و ELK Stack.

  تجربه کار با CI/CD و ابزارهایی مثل Jenkins یا GitLab CI.

·  مهارت‌های نرم:

1. تفکر تحلیلی:

·        توانایی شناسایی مشکلات پیچیده و ارائه راه‌حل‌های موثر.

2. مدیریت زمان:

·        توانایی مدیریت وظایف مختلف و رعایت مهلت‌های پروژه.

3. همکاری تیمی:

·        تعامل موثر با تیم‌های دیگر مانند فرانت‌اند و مدیریت پروژه.

4. یادگیری مداوم:

·        آمادگی برای یادگیری تکنولوژی‌ها و ابزارهای جدید.

5. توجه به جزئیات:

·         دقت در پیاده‌سازی کد و رعایت بهترین شیوه‌های کدنویسی.

شرایط احراز شغل

جنسیت
تفاوتی ندارد

ثبت مشکل و تخلف آگهی

ارسال رزومه برای شرکت داده گستران هوشمند جامع هوباد