الدور الوظيفي: مطور Fullstack (React & NodeJS)
الخبرة: +5 سنوات
الوصف الوظيفي:
الخبرة
● خبرة لا تقل عن 5 سنوات في البرمجة باستخدام ReactJS (TypeScript)، وHTML، ومعالجات CSS التمهيدية، أو
CSS-in-JS في إنشاء تطبيقات المؤسسات عالية الأداء لتطبيقات الويب
المتجاوبة.
● خبرة لا تقل عن 5 سنوات في البرمجة باستخدام NodeJS وJavaScript وTypeScript وقواعد بيانات NoSQL.
● تطوير وتنفيذ مكونات واجهة المستخدم عالية الاستجابة باستخدام مفاهيم
React (وحدات ومكونات قائمة بذاتها، قابلة لإعادة الاستخدام، وقابلة للاختبار).
● تصميم وأتمتة عملية البناء للإنتاج، باستخدام منفذات المهام (task runners) أو النصائح البرمجية (scripts).
● معرفة بهياكل البيانات (Data Structures) لـ TypeScript.
● مراقبة وتحسين أداء الواجهة الأمامية.
● يُفضل وجود معرفة بمجالات القطاع المصرفي أو تجارة التجزئة.
● خبرة عملية في ضبط الأداء، وإصلاح الأخطاء (debugging)، والمراقبة.
المهارات التقنية
● معرفة ممتازة بتطوير واجهات برمجة التطبيقات Restful APIs القابلة للتوسع وعالية التوافر باستخدام تقنيات
NodeJS
● إتقان تام لمبادئ CI/CD، والمشاركة الفعالة في حل واستكشاف الأخطاء وإصلاحها في
منظومة الخدمات Distributed Services
● فهم تقنيات الحاويات (containerization)، وخبرة في Dockers وKubernetes.
● خبرة وتجربة في تكامل بوابات API مثل 3Scale.
● فهم التسجيل الأحادي (Single-Sign-on) أو المصادقة القائمة على الرموز (Rest, JWT, OAuth).
● امتلاك معرفة خبيرة بصفوف المهام/الرسائل (task/message queues) تشمل على سبيل المثال لا الحصر: AWS وMicrosoft
Azure وPushpin وKafka.
● يُفضل وجود خبرة عملية في GraphQL.
● كتابة كود JavaScript وHTML وCSS مختبر وقياسي وموثق.
● خبرة في تطوير واجهات مستخدم متجاوبة مستندة إلى الويب.
● خبرة في Styled Components وTailwind CSS وMaterial UI وتقنيات CSS-in-JS
الأخرى.
● فهم دقيق لمسؤوليات المنصة، وقاعدة البيانات، وواجهة API، وطبقة التخزين المؤقت (caching layer)،
والخوادم الوكيلة (proxies)، وخدمات الويب الأخرى المستخدمة في النظام.
● كتابة كود غير حاصر (non-blocking code)، واللجوء إلى تقنيات متقدمة مثل تعدديّة الخيوط (multi-threading) عند
الحاجة.
● إتقان قوي للغة JavaScript، بما في ذلك التلاعب بـ DOM ونموذج كائنات JavaScript.
● توثيق الكود المدمج باستخدام JSDoc أو الاتفاقيات الأخرى.
● فهم دقيق لـ React.js ومبادئه الأساسية.
● دراية بخطوط أنابيب البناء وأدوات الواجهة الأمامية الحديثة.
● خبرة في أساليب عمل React.js الشائعة (مثل Flux أو Redux أو ContextAPI أو هياكل
البيانات).
● مهارة في اختبار الأداء والقياس (benchmarking) والتحسين.
● إتقان أحدث إصدارات ECMAScript (JavaScript أو TypeScript).
● معرفة بـ React والأدوات الشائعة المستخدمة في منظومة React الأوسع، مثل npm وyarn
وغيرها.
● دراية بأدوات البرمجة الشائعة مثل RESTful APIs وTypeScript وبرامج التحكم في الإصدارات،
وأدوات النشر عن بُعد، وأدوات CI/CD.
● فهم أنماط البرمجة الشائعة والمبادئ الأساسية لـ React، مثل
مكونات React وhooks ودورة حياة React.
● اختبار الوحدات (Unit testing) باستخدام Jest أو Enzyme أو Jasmine أو ما يعادلها من أطر العمل.
● فهم مكتبات الفحص والتنسيق (TSLINT وPrettier وغيرها).
Role: Fullstack Developer (React & NodeJS)
Experience: 5+ Years
JOB Description:
Experience
● Minimum 5 years of coding experience in ReactJS (TypeScript), HTML, CSS-Pre-processors, or
CSS-in-JS in creating Enterprise Applications with high performance for Responsive Web
Applications.
● Minimum 5 years of coding experience in NodeJS, JavaScript & TypeScript and NoSQL Databases.
● Developing and implementing highly responsive user interface components using React
concepts. (self-contained, reusable, and testable modules and components)
● Architecting and automating the build process for production, using task runners or scripts
● Knowledge of Data Structures for TypeScript.
● Monitoring and improving front-end performance.
● Banking or Retail domains knowledge is good to have.
● Hands on experience in performance tuning, debugging, monitoring.
Technical Skills
● Excellent knowledge developing scalable and highly available Restful APIs using NodeJS
technologies
● Well versed with CI/CD principles, and actively involved in solving, troubleshooting issues in
distributed services ecosystem
● Understanding of containerization, experienced in Dockers, Kubernetes.
● Exposed to API gateway integrations like 3Scale.
● Understanding of Single-Sign-on or token-based authentication (Rest, JWT, OAuth)
● Possess expert knowledge of task/message queues include but not limited to: AWS, Microsoft
Azure, Pushpin and Kafka.
● Practical experience with GraphQL is good to have.
● Writing tested, idiomatic, and documented JavaScript, HTML and CSS
● Experiencing in Developing responsive web-based UI
● Have experience on Styled Components, Tailwind CSS, Material UI and other CSS-in-JS
techniques
● Thorough understanding of the responsibilities of the platform, database, API, caching layer,
proxies, and other web services used in the system
● Writing non-blocking code, and resorting to advanced techniques such as multi-threading, when
needed
● Strong proficiency in JavaScript, including DOM manipulation and the JavaScript object model
● Documenting the code inline using JSDoc or other conventions
● Thorough understanding of React.js and its core principles
● Familiarity with modern front-end build pipelines and tools
● Experience with popular React.js workflows (such as Flux or Redux or ContextAPI or Data
Structures)
● A knack for benchmarking and optimization
● Proficient with the latest versions of ECMAScript (JavaScript or TypeScript)
● Knowledge of React and common tools used in the wider React ecosystem, such as npm, yarn
etc
● Familiarity with common programming tools such as RESTful APIs, TypeScript, version control
software, and remote deployment tools, CI/CD tools
● An understanding of common programming paradigms and fundamental React principles, such
as React components, hooks, and the React lifecycle
● Unit testing using Jest, Enzyme, Jasmine or equivalent framework
● Understanding of linter libraries (TSLINT, Prettier etc)