FuelBuddy'nin müşteri uygulaması bir Progressive Web App olarak başladı. Bu Android'de işe yaradı, ancak iPhone'da duvara tosladı: Apple, web uygulamalarının yalnızca kendi WebKit motorunda çalışmasına izin veriyor ve onlara ikinci sınıf muamele ediyor — güvenilmez ana ekrana ekleme, sınırlı depolama ve güvenilir push bildirimlerinin olmaması — hatta ana ekran web uygulamalarını iOS'tan tamamen kaldırma noktasına kadar. FuelBuddy için bu, PWA'nın iPhone kullanıcılarına fiilen hizmet veremeyeceği ve onlara ulaşmanın tek güvenilir yolunun yerel bir uygulama olduğu anlamına geliyordu. Uygulamayı React Native'de yeniden yazan mühendislik ekibinin bir parçasıydım.
Üzerinde çalıştığım şeyler
- PWA'dan React Native'e: Uygulamayı derlenmiş bir React Native uygulaması olarak yeniden yazdım; mobil arayüze odaklanarak ve sarmalanmış bir web sayfası gibi değil, hem iOS hem de Android'de yerel hissettirmesini sağlayarak.
- Yığın boyunca çalışmak: Asıl odağım mobil frontend'di, ancak bir özellik yeni veri uç noktalarına ihtiyaç duyduğunda CRUD API'lerini Hasura'nın GraphQL motoru üzerinde kendim geliştirdim; böylece iş başka bir ekibi bekleyerek takılmadı.
- Ekiple birlikte teslim etmek: Gereksinimleri bitmiş özelliklere dönüştürmek ve sürümleri hareket halinde tutmak için diğer geliştiriciler ve ürün sahipleriyle yakından çalıştım.
Neden önemliydi
Yerele geçmek, FuelBuddy'yi güvenemeyeceği platformdan kurtardı ve müşterilerin karşısına hem iPhone hem de Android'de tek, tutarlı bir uygulama koydu. Yığın boyunca katkıda bulunmak, ekibin sürüm temposunu korumasına yardım etti.