Skip to content

๐ŸŽฏ Role Finder & Development Guidelines

Find your role and understand the golden rules for all developers

๐Ÿš€ Quick Access

๐Ÿ“‹ Platform Solutions


๐Ÿ† Golden Rules for All Developers

๐Ÿ“‹ Core Development Principles

1. Task Management & Jira Workflow

  • Complete Assigned Tasks: Work on any Jira task or bug assigned to you until completion
  • Ensure Happy Path Coverage: At minimum, implement and test the happy scenario for every feature
  • Update Postman Collections: Always save and update Postman with correct cURL commands for new endpoints
  • Document Changes: Add comprehensive comments in Jira describing updates or fixes before reassignment
  • One Task, One Branch: Create a separate Git branch for each Jira task (use format: feature/JIRA-123-description)

2. Version Control & Collaboration

  • Daily Git Commits: Push your work to GitLab every day, maintaining consistent development momentum
  • Peer Code Review: Mandatory code review by another developer before marking tasks for testing
  • Clean Commit History: Write clear, descriptive commit messages that explain the "why" not just the "what"
  • Branch Naming Convention: Use consistent branch naming: feature/, bugfix/, hotfix/ prefixes

3. Quality Assurance & Testing

  • Pre-Deployment Testing: Thorough testing required before any production deployment
  • Post-Deployment Verification: Validate functionality after deployment to production
  • Test Coverage: Aim for comprehensive test coverage including edge cases and error scenarios
  • Documentation Updates: Update relevant documentation when adding new features or changing APIs

4. Code Quality Standards

  • Code Formatting: Use Black formatter for Python code, Prettier for JavaScript/TypeScript
  • Consistent Style: Follow team coding standards and style guides
  • Meaningful Names: Use descriptive variable, function, and class names
  • DRY Principle: Don't Repeat Yourself - refactor common code into reusable functions

5. Communication & Documentation

  • Update Jira Status: Keep Jira tickets current with progress, blockers, and decisions
  • Document Decisions: Record architectural decisions and their rationale
  • Share Knowledge: Document complex solutions and share learnings with the team
  • Ask Questions Early: Don't hesitate to seek clarification when requirements are unclear

6. Security & Best Practices

  • Input Validation: Always validate and sanitize user inputs
  • Authentication Checks: Verify user permissions before sensitive operations
  • Secure Dependencies: Keep dependencies updated and scan for vulnerabilities
  • Environment Variables: Never commit sensitive information like API keys or passwords

7. Performance & Scalability

  • Optimize Database Queries: Write efficient database queries and use proper indexing
  • Monitor Resource Usage: Be mindful of memory, CPU, and network usage
  • Caching Strategy: Implement appropriate caching for frequently accessed data
  • Async Operations: Use asynchronous processing for time-consuming operations

8. Deployment & DevOps

  • Environment Parity: Ensure development, staging, and production environments are similar
  • Rollback Plan: Always have a rollback strategy for production deployments
  • Monitoring Setup: Implement proper logging and monitoring for new features
  • Backup Strategy: Ensure data backup procedures are in place before major changes

๐ŸŽฏ Role-Specific Guidelines

๐Ÿค– AI Engineer

Focus: AI/ML development, automation, and machine learning solutions

Key Responsibilities: - Develop and maintain AI/ML models for marketing automation - Implement natural language processing for customer interactions - Optimize recommendation engines and personalization algorithms - Monitor and improve AI model performance and accuracy

Learn More: - ๐Ÿ“– AI Engineer Guide - ๐Ÿš€ Quick Reference - ๐Ÿ—๏ธ System Architecture

๐Ÿ“Š Data Engineer

Focus: Data pipelines, analytics, and data infrastructure

Key Responsibilities: - Design and maintain data pipelines for analytics and reporting - Implement data warehousing and ETL processes - Ensure data quality, security, and compliance - Build and maintain analytics dashboards and reporting tools

Learn More: - ๐Ÿ“– Data Engineer Guide - ๐Ÿš€ Quick Reference - โš™๏ธ System Components

๐Ÿ”ง DevOps Engineer

Focus: Infrastructure, deployment, and system operations

Key Responsibilities: - Manage cloud infrastructure and deployment pipelines - Implement monitoring, logging, and alerting systems - Ensure system security, scalability, and reliability - Automate deployment and configuration management

Learn More: - ๐Ÿ“– DevOps Engineer Guide - ๐Ÿš€ Quick Reference - ๐Ÿ—๏ธ System Architecture

โš™๏ธ Backend Engineer

Focus: Server-side development, APIs, and business logic

Key Responsibilities: - Develop and maintain backend services and APIs - Implement business logic and data processing - Ensure API performance, security, and scalability - Integrate with external services and third-party APIs

Learn More: - ๐Ÿ“– Backend Engineer Guide - ๐Ÿš€ Quick Reference - ๐Ÿ”ง API Documentation

๐ŸŽจ Frontend Engineer

Focus: User interface development and user experience

Key Responsibilities: - Build responsive and intuitive user interfaces - Implement frontend functionality and user interactions - Ensure cross-browser compatibility and accessibility - Optimize frontend performance and user experience

Learn More: - ๐Ÿ“– Frontend Engineer Guide - ๐Ÿš€ Quick Reference - ๐ŸŽจ UI/UX Guidelines

๐Ÿ“ฑ Mobile Engineer

Focus: Mobile app development and mobile-specific features

Key Responsibilities: - Develop native and cross-platform mobile applications - Implement mobile-specific features and optimizations - Ensure app performance, stability, and user experience - Integrate with mobile platforms and app stores

Learn More: - ๐Ÿ“– Mobile Engineer Guide - ๐Ÿš€ Quick Reference - ๐Ÿ“ฑ Mobile SDK Documentation

๐Ÿ”„ Fullstack Engineer

Focus: End-to-end development across frontend and backend

Key Responsibilities: - Develop complete features from frontend to backend - Ensure seamless integration between different system layers - Implement full-stack solutions and optimizations - Maintain code quality and consistency across the stack

Learn More: - ๐Ÿ“– Fullstack Engineer Guide - ๐Ÿš€ Quick Reference - ๐Ÿ—๏ธ System Architecture

๐Ÿ“‹ Project Manager

Focus: Project planning, coordination, and team management

Key Responsibilities: - Plan and coordinate development projects and sprints - Manage team resources, timelines, and deliverables - Facilitate communication between stakeholders and development teams - Ensure project quality, scope, and budget adherence

Learn More: - ๐Ÿ“– Project Manager Guide - ๐Ÿš€ Quick Reference - ๐Ÿ“‹ Project Workflows

๐Ÿ› ๏ธ๐Ÿงช Support & Testing Engineer

Focus: Quality assurance, testing, and customer support

Key Responsibilities: - Design and execute comprehensive testing strategies - Identify and report bugs and quality issues - Provide technical support and troubleshooting assistance - Ensure product quality and user satisfaction

Learn More: - ๐Ÿ“– Support & Testing Engineer Guide - ๐Ÿš€ Quick Reference - ๐Ÿงช Testing Guidelines


๐Ÿ“š Next Steps

๐Ÿ—๏ธ Technical Deep Dive

๐Ÿ“– Documentation & Support


Last updated: See Documentation Review for latest changes

Ask Chehab GPT