React Native Bug Fixing for Social App
# React Native Developer – Performance Optimization, Bug Fixing & App Stability
## Project Overview
We are looking for an experienced **React Native developer** to work on an existing social networking/mobile application and resolve multiple performance, stability, media-handling, and user-experience issues.
The application is already developed, and the requirement is **not to build the application from scratch**. The developer will be required to understand the existing codebase, identify the root causes of performance and stability issues, refactor/restructure problematic areas where necessary, and implement reliable production-ready solutions.
The ideal candidate should have strong experience with **React Native performance optimization, feed/reels architecture, media handling, memory management, asynchronous data loading, video playback, and crash debugging**, particularly on low-end Android devices.
## Key Responsibilities
### 1. Feed Loading & Performance Optimization
The feed currently experiences loading delays, buffering, and performance issues.
The developer needs to implement an optimized feed-loading strategy such as:
* Implement intelligent feed prefetching.
* If the user is currently viewing the 5th post, the application should proactively load/prefetch upcoming posts, for example up to approximately the 15th post.
* The next set of posts should be available before the user reaches them.
* Avoid unnecessary loading indicators or buffering when moving between posts.
* Optimize API requests and prevent unnecessary duplicate API calls.
* Implement efficient pagination/infinite scrolling.
* Optimize image and video loading.
* Ensure smooth scrolling/swiping between feed items.
* Properly manage cached and prefetched content.
* Prevent excessive memory consumption caused by preloading too much content.
The goal is to provide a **smooth, continuous feed experience without noticeable buffering or waiting between posts**.
### 2. Low-End Device Performance
The application currently becomes slow and may crash on lower-end mobile devices.
The developer should:
* Identify memory-intensive components.
* Optimize React Native rendering.
* Reduce unnecessary component re-renders.
* Optimize FlatList/FlashList or the existing feed implementation.
* Improve image and video memory management.
* Properly dispose of unused media resources.
* Reduce unnecessary background processing.
* Optimize API/network requests.
* Identify memory leaks.
* Improve application responsiveness on devices with limited RAM and processing power.
The application should remain stable and usable on **low-end and mid-range Android devices**, not only high-end phones.
### 3. Application Crash & Stability Fixes
The application occasionally crashes during normal usage.
The developer will be expected to:
* Investigate the root causes of crashes.
* Analyze existing error handling and asynchronous operations.
* Identify race conditions and improper state management.
* Fix memory-related crashes.
* Handle failed API requests gracefully.
* Handle slow/unstable network conditions.
* Prevent crashes caused by media loading or playback.
* Refactor unstable portions of the existing codebase where required.
* Improve overall application stability and reliability.
Simply adding temporary workarounds is not sufficient. The objective is to identify and resolve the **underlying technical problems**.
### 4. Existing Codebase Restructuring & Refactoring
Some portions of the existing application may require architectural or code-level restructuring.
The developer should be comfortable with:
* Understanding an existing React Native codebase.
* Reviewing existing components and services.
* Identifying inefficient implementation patterns.
* Refactoring poorly structured code.
* Improving state management where required.
* Improving component lifecycle handling.
* Separating reusable components and services.
* Improving asynchronous data handling.
* Removing unnecessary code and duplicate logic.
* Maintaining existing functionality while improving performance and stability.
Any restructuring should be performed carefully to avoid breaking existing application features.
### 5. Chat Media Management
The chat module requires improvements to image and video handling.
Required functionality includes:
* Proper handling of images and videos received/sent through chat.
* Media should be stored/managed within the application's intended media storage/gallery system.
* Media handling should respect the application's privacy/security requirements.
* Users should have appropriate options to view and manage chat media.
* Implement required **edit** functionality for supported images/media.
* Implement **download/save** functionality where permitted.
* Ensure media operations do not unnecessarily consume device memory.
* Handle large images and videos efficiently.
* Provide appropriate loading/error states for media.
### 6. Image Editing Features
The application requires basic image editing functionality.
Required features include:
* Image cropping.
* Highlight/markup functionality.
* Ability to edit an image before sending or saving it.
* Maintain reasonable image quality while controlling file size.
* Ensure the editing interface works smoothly on Android devices.
### 7. Reels / Video Playback
There is an issue with reel/video playback.
Currently, when a user taps a reel to pause it and then resumes playback, the reel may restart from the beginning.
This needs to be corrected so that:
* Tapping the reel pauses playback.
* Tapping again resumes playback from the exact position where it was paused.
* The video should not restart unnecessarily.
* Playback state should be maintained correctly.
* Video resources should be properly managed when navigating between reels.
* Auto-play and scrolling behavior should remain smooth.
* Video playback should be optimized for lower-end devices.
## Technical Expectations
The developer should have strong practical experience with:
* React Native
* JavaScript / TypeScript
* React
* Android performance optimization
* FlatList / FlashList optimization
* REST APIs
* Asynchronous data loading
* Image caching and optimization
* Video playback
* Memory management
* State management
* Debugging production crashes
* Performance profiling
* API/network optimization
* Mobile application architecture
* Git/GitHub
Experience with social-media-style applications, reels, feeds, chat systems, or media-heavy applications will be highly preferred.
## Important Requirement
This is an **existing production/application codebase**.
The developer must first understand the existing implementation before making major changes.
We are looking for someone who can:
**Analyze → Identify Root Cause → Optimize → Refactor Where Required → Test → Stabilize**
rather than simply applying surface-level bug fixes.
The developer should also test the application on different performance levels of Android devices, especially lower-end devices.
## Expected Deliverables
* Optimized feed loading and prefetching.
* Reduced feed buffering/loading delays.
* Improved scrolling and feed responsiveness.
* Improved performance on low-end devices.
* Resolution of application crashes.
* Fixes for memory/performance issues.
* Refactoring of problematic React Native code where required.
* Improved chat image/video handling.
* Image crop and highlighting functionality.
* Chat media edit/download functionality.
* Correct reel pause/resume behavior.
* Stable handling of network failures and media loading.
* Clean and maintainable code.
* Changes committed to the designated Git repository.
* Basic testing and verification of all implemented fixes.
## Testing & Acceptance Criteria
The work will be considered complete when:
1. Feed content loads smoothly without unnecessary buffering.
2. Upcoming feed posts are intelligently prefetched before the user reaches them.
3. Feed scrolling/swiping remains responsive.
4. The application is significantly more stable on low-end Android devices.
5. Known crash scenarios are resolved.
6. No significant memory leaks are introduced by prefetching.
7. Chat images/videos work reliably.
8. Required media edit/download functionality works correctly.
9. Image crop and highlighting work as expected.
10. Reels resume from the paused position instead of restarting.
11. Existing major application functionality continues to work after the changes.
12. The final implementation is production-ready rather than a temporary workaround.
## Developer Profile
We prefer an **experienced React Native developer** who has worked on real-world production applications and understands performance optimization beyond basic UI development.
Candidates should be comfortable taking ownership of an existing codebase, investigating difficult bugs, and making architectural improvements when required.
**Experience with low-end device optimization, social feeds, reels/video playback, chat/media systems, and large React Native applications will be a strong advantage.**
## Confidentiality
The project involves an existing client application and codebase. The selected developer may be required to sign an **NDA/confidentiality agreement** and must maintain strict confidentiality regarding the source code, application architecture, client information, credentials, data, and project requirements.
All project code and deliverables will remain the property of the client/project owner.