Lead Software Engineer - Mobile (Android)
Freshworks · Chennai, in
Freshworks · Chennai, in
Organizations everywhere struggle under the crushing costs and complexities of “solutions” that promise to simplify their lives. To create a better experience for their customers and employees. To help them grow. Software is a choice that can make or break a business. Create better or worse experiences. Propel or throttle growth. Business software has become a blocker instead of ways to get work done. There’s another option. Freshworks. With a fresh vision for how the world works. At Freshworks, we build uncomplicated service software that delivers exceptional customer and employee experiences. Our enterprise-grade solutions are powerful, yet easy to use, and quick to deliver results. Our people-first approach to AI eliminates friction, making employees more effective and organizations more productive. Over 72,000 companies, including Bridgestone, New Balance, Nucor, S&P Global, and Sony Music, trust Freshworks’ customer experience (CX) and employee experience (EX) software to fuel customer loyalty and service efficiency. And, over 4,500 Freshworks employees make this possible, all around the world. Fresh vision. Real impact. Come build it with us. About the Team We’re a passionate and fun-loving mobile team made up of Android, iOS, and automation engineers, with a solid mix of experience and energy. We build and maintain multiple mobile apps and multiple mobile SDKs, powering user experiences at scale. Our portfolio includes: Apps: Freshdesk, Freshchat, Freshcaller, and Freshsales (all on Android & iOS) SDKs: Freshchat SDK (for Android, iOS, React Native, and Flutter) Our impact? Over 200,000 active app users   More than 200 million active SDK users   If you're excited about working across high-impact apps and building SDKs that scale globally, you’ll feel right at home with us. Overview of the Role As a Lead Android Engineer, you own the technical direction of one or more of our Android apps and SDKs. You set the architectural standard, make the consequential technology calls, and are accountable for the stability, performance, and release health of your surface area. Because our SDKs are embedded in thousands of third-party applications reaching over 200 million users, you carry a bar most Android roles never encounter: every public API you ship is a long-term contract, and every regression is someone else's production incident.   You lead through design reviews, mentorship, and hands-on pairing rather than through hierarchy, and you partner directly with Product, Design, Backend, and QA to shape what gets built — not just to execute it. You remain a hands-on engineer: you write code in the hardest parts of the system, and your judgement is the escalation point when the team is stuck. Key Responsibilities Technical Leadership & Architecture • Own and evolve the Android architecture across apps and SDKs — Gradle module boundaries, dependency graph, state management, navigation, and offline/sync strategy. • Make and document consequential technical decisions (Views → Jetpack Compose adoption, third-party dependency selection, persistence and caching strategy, native vs cross-platform) with explicit trade-off analysis and a migration path. • Author and drive technical design documents; run design reviews and hold the bar on Clean Architecture, MVVM/MVI, SOLID, and pattern consistency across teams. • Lead large-scale refactors and migrations with incremental, low-risk rollout plans — no big-bang rewrites. • Identify and remove systemic technical debt; maintain a prioritized architecture backlog reviewed with Product and Engineering Management. SDK Ownership & API Stewardship • Own public SDK API design — clean, minimal, hard-to-misuse surfaces, with deliberate decisions about what becomes permanent contract. • Own semantic versioning, backward compatibility, and deprecation policy; guarantee that host applications can upgrade without breakage. • Defend the integration footprint: binary/method-count impact, transitive dependency conflicts with host apps, consumer R8/ProGuard rules, manifest merger behaviour, and minSdk/targetSdk policy. • Own SDK integration documentation, sample apps, migration guides, and release notes. • Lead technical discussions with customer and partner engineering teams — integration reviews, escalations, and root-cause analysis on their production issues. • Maintain parity and consistency of behaviour across Android, iOS, React Native, and Flutter SDK variants in partnership with the iOS and cross-platform leads. Delivery & Execution • Break down ambiguous, multi-quarter initiatives into scoped, sequenced, estimable work for the team. • Stay hands-on: personally deliver the highest-risk components, prototypes, and performance-critical paths. • Own the release train — versioning, release branching, staged rollouts and halts in Play Console, Play App Signing, kill switches, and rollback procedures for both apps and SDK artifact publishing (Maven Central / internal repositories). • Own build and developer productivity: Gradle build times, co