Problem
A client needed a native, reliable real-time chat experience on Android with push notifications and secure authentication.
What I built
A native Android app (Java) backed by a Node.js + MySQL API, real-time messaging over Socket.IO, Firebase Authentication for sign-in, and Firebase Cloud Messaging for push.
Architecture / technical decisions
- Socket.IO for real-time delivery with fallback handling.
- Firebase Auth + FCM for authentication and reliable push.
- REST APIs on Node.js/MySQL for persistence and history.
Result / impact
A delivered, production-ready chat product owned end to end.
Lessons learned
Owning the full stack on a small project sharpens judgement about where complexity is worth it.
