إنتهت صلاحية هذا الإعلان الوظيفي لقد إنتهت صلاحية هذا الإعلان الوظيفي و هو غير مفتوح حاليا لأي طلبات عمل.
إرفاق
وصف الوظيفة
Expected Responsibilities
-
Develop and maintain backend web applications that interact with each other, as well as with other existing applications
-
Assist in the design of these applications based on product requirements and technical constraints
-
Manage and monitor applications’ production runtimes
Technical Requirements
We do not expect candidates to be experts in all of the categories below. However, exposure to the basics in each area would be a major benefit.
The current application uses Rails, Postgres, Hotwire (Turbo/Stimulus) and is deployed on Heroku. New applications do not need to follow the same pattern, as long as they are maintainable. Familiarity with Rails or Hotwire is not required.
General
-
Development of maintainable code that is well-structured, clear, easy to review, and easy to refactor as needed
-
Ability to translate design requirements into working code
-
Recognition of engineering trade-offs when making decisions
-
Familiarity with Git
-
Collaboration using GitHub (opening reviewable PRs, code review, etc.)
-
Familiarity with debugging processes and best practices for solving code issues
-
Familiarity with addressing technical debt and refactoring
-
Strong organizational skills
Backend Development
-
Object-Oriented Programming (Ruby on Rails preferred, but any language or stack with similar development processes is acceptable, e.g. PHP, Python, etc.)
-
Relational database systems (Postgres, MySQL, etc.) and how to properly scale queries
-
Caching systems (Redis, Memcache, etc.)
-
Understanding of common API architectures (REST preferred, GraphQL acceptable)
-
Developing APIs (including versioning, error handling, etc.)
-
Securing APIs
-
Proper handling of user data (PII best practices, secure storage, etc.)
-
Automated testing (unit tests, integration tests, etc.)
-
Backend package management (bundler, composer, pip, etc.)
-
Observability and error reporting
Infrastructure
-
Standing up an application in production (using a host such as Heroku or similar)
-
Standing up an application on development machines (Docker preferred to manage inter-service dependencies, but other similar systems are acceptable)
-
Deploying to production either manually or via CI/CD pipelines
-
Configuring and monitoring resource usage and performance
-
Debugging production bugs
-
Management of application secrets
-
Familiarity with the Linux command line
المتطلبات
Expected Responsibilities
-
Develop and maintain backend web applications that interact with each other, as well as with other existing applications
-
Assist in the design of these applications based on product requirements and technical constraints
-
Manage and monitor applications’ production runtimes
Technical Requirements
We do not expect candidates to be experts in all of the categories below. However, exposure to the basics in each area would be a major benefit.
The current application uses Rails, Postgres, Hotwire (Turbo/Stimulus) and is deployed on Heroku. New applications do not need to follow the same pattern, as long as they are maintainable. Familiarity with Rails or Hotwire is not required.
General
-
Development of maintainable code that is well-structured, clear, easy to review, and easy to refactor as needed
-
Ability to translate design requirements into working code
-
Recognition of engineering trade-offs when making decisions
-
Familiarity with Git
-
Collaboration using GitHub (opening reviewable PRs, code review, etc.)
-
Familiarity with debugging processes and best practices for solving code issues
-
Familiarity with addressing technical debt and refactoring
-
Strong organizational skills
Backend Development
-
Object-Oriented Programming (Ruby on Rails preferred, but any language or stack with similar development processes is acceptable, e.g. PHP, Python, etc.)
-
Relational database systems (Postgres, MySQL, etc.) and how to properly scale queries
-
Caching systems (Redis, Memcache, etc.)
-
Understanding of common API architectures (REST preferred, GraphQL acceptable)
-
Developing APIs (including versioning, error handling, etc.)
-
Securing APIs
-
Proper handling of user data (PII best practices, secure storage, etc.)
-
Automated testing (unit tests, integration tests, etc.)
-
Backend package management (bundler, composer, pip, etc.)
-
Observability and error reporting
Infrastructure
-
Standing up an application in production (using a host such as Heroku or similar)
-
Standing up an application on development machines (Docker preferred to manage inter-service dependencies, but other similar systems are acceptable)
-
Deploying to production either manually or via CI/CD pipelines
-
Configuring and monitoring resource usage and performance
-
Debugging production bugs
-
Management of application secrets
-
Familiarity with the Linux command line
المهارات
- تحليل مواصفات البرامج
- جمع ملاحظات العملاء على التطبيقات
- إنشاء مخطط انسيابي
- تصحيح البرنامج
- تطوير النموذج الأولي للبرنامج
- تنفيذ تصميم مواقع الويب الأمامية
- تفسير النصوص التقنية
- تقديم الوثائق التقنية
- ترجمة المتطلبات إلى تصميم مرئي
- استخدام واجهة خاصة بالتطبيق
- استخدام لغات الترميز
- استخدام أنماط تصميم البرامج
- استخدام مكتبات البرامج