React native & React js Developer
Job Title: React native & React js Developer
Reports to: Senior Manager- IT PMO
Experience : 2 Plus Years
Role Purpose
The Software Developer is responsible for developing software solutions aligned with business requirements, ensuring functionality, and efficiency. This includes developing mobile and web applications using React native and React JS, and Database implementation to deliver high-quality user experiences, including the ability to understand and implement APIs for the backend.
Key Responsibilities & Accountabilities
1. Developing Software Solutions Aligned with Business Requirement
Responsible for designing, developing, testing, and maintaining high-quality software solutions that meet business needs.
Requires a strong understanding of Business Requirement Documents (BRD) to ensure that developed applications align with business objectives.
Requires a strong understanding of software solutions designed to effectively implement, optimize, and enhance system functionality.
Collaborating with cross-functional teams to ensure that software applications are efficient and aligned with best practices.
Manage technical delivery across the teams to ensure the quality of received releases from different vendors.
2. Developing Web & Mobile Applications
Develop mobile applications using React native, ensuring performance, usability, and scalability.
Implement full web applications using React JS (CSS, JS, HTML), following best practices for efficiency and maintainability.
Actively optimize and enhance existing web and mobile applications, ensuring continuous improvement and alignment with evolving business needs.
Manage & deploy the build in the TestFlight using Xcode & Google play.
WebSocket & API Integration: Integrate with backend services and third-party WebSocket & APIs (REST, GraphQL, etc.) to deliver seamless functionality.
State Management: Implement and manage state management solutions (e.g., Redux, Context API, Zustand).
Code Quality: Adhere to coding standards, conduct code reviews, and ensure code is clean, well-documented, and maintainable.
Version Control: Utilize Git and follow established Git workflows.
Troubleshooting & Debugging: Effectively diagnose, debug, and resolve issues in both web and mobile applications.
Performance Optimization: Identify and implement performance optimizations for responsiveness and efficiency.
Security Best Practices: Implement security best practices to protect applications against common vulnerabilities.
Native Module Integration (React Native): Integrate with native device features by developing or utilizing native modules.
Mobile Performance Optimization: Optimize React Native applications for performance on various mobile devices and OS versions.
Mobile UI/UX Principles: Implement user interfaces that adhere to platform-specific mobile UI/UX guidelines (iOS and Android).
Push Notifications: Implement and manage push notification services.
Mobile Testing Frameworks: Utilize mobile testing frameworks (e.g., Jest, Detox).
Responsive Design: Implement responsive web applications that adapt to different screen sizes.
UI/UX Implementation: Translate UI/UX designs and wireframes into functional web interfaces.
Frontend Build Tools: Utilize and configure frontend build tools (e.g., Webpack, Parcel).
Browser Compatibility: Ensure web applications are compatible across different web browsers.
SEO Considerations: Implement frontend best practices for search engine optimization.
Real-time Data Handling: Experience with handling real-time data streams efficiently (e.g., WebSockets, SSE).
Low-Latency Development: Understanding of and experience in developing low-latency applications.
Memory Management: Strong understanding of memory management principles to prevent crashes and ensure smooth operation.
3. Designing and Understanding Software Architecture
Read and design UML diagrams to visualize system architecture and ensure structured software development.
Collaborate with teams to translate business requirements into well-defined technical solutions.
Ensure software scalability and maintainability by following best design practices.
4. Database Implementation and Design Understanding
Implement databases efficiently, ensuring data integrity and optimal performance.
Understanding ER diagrams to design and structure relational databases effectively.
Develop and optimize SQL queries and stored procedures to enhance database performance.
Ensure database scalability and security by following best practices in indexing and access control.
Qualifications & Experience
Education: Bachelor's degree in computer science and information systems or a related field.
Experience: Minimum 2-6 years of experience.
Skills and Knowledge
1. Competent knowledge in English and Arabic, Spoken and Written.
2. Proficient in using MS Office Suite.
3. Basic knowledge about CMA and Saudi Regulators.
4. Good technical skills.
5. Good Design and Problem-Solving Skills.