Mobile Senior Software Engineer
Senior mobile engineer building Rubikpara's iOS and Android apps end-to-end in Flutter — money transfer, QR/bill payments, cards and KYC flows — with native Kotlin/Swift integrations, CI/CD, and mobile security practices for a Turkish e-money/payments institution.
- Compensation
- Not disclosed
- Location
- Turkey
- Work setup
- Not specified
- Seniority
- Senior
- Employment
- Not specified
- Experience
- Not specified
- Category
- Software engineering
- Posted
Skills
Must have
- Degree in Computer Engineering, Software Engineering, or related field
- 5+ years mobile app development experience, 3+ years with Flutter
- Advanced experience with state management libraries (GetX, Bloc, Provider)
- Proficiency in design patterns and principles such as Clean Architecture and MVVM
- Proficiency in OOP, SOLID principles, and Design Patterns
- Experience with RESTful API integrations (used Dio, Retrofit libraries)
- Knowledge of at least one native platform — Android (Kotlin/Java) or iOS (Swift/Obj-C) — able to write native modules and platform channels when needed
- Proficiency in CI/CD processes, Flavor management (Development/Staging/Production), and app store processes (App Store & Google Play)
- Effective use of Git version control
- Proficiency in mobile security practices (SSL pinning, secure storage, encryption, root/jailbreak detection)
- Experience with Unit/Widget tests and E2E test automation (Maestro, Patrol, etc.)
- Values UI/UX principles and can collaborate well with designers
- Cares about code quality and can run code review processes
Nice to have
- Preferably experience in fintech, banking, or payment institutions
- Web development experience with React and Next.js
- Experience with NFC identity verification (e-ID reading), KYC, and OCR / ML Kit integrations
- Experience with error and performance monitoring tools such as Sentry and Firebase Performance
- Familiarity with regulation and compliance processes under Law No. 6493 (TCMB, BKM, KVKK)
Full description
Rubikpara, 2020 yılında kurulan ve Türkiye Cumhuriyet Merkez Bankası’na bağlı 6493 Sayılı Elektronik Para ve Ödeme Hizmetleri Kanunu'na tabi bir Elektronik Para Kuruluşu’dur. Rubikpara, kobilere özel teknoloji çözümlerini Sanal Pos, Soft Pos, Fiziki Pos ve B2B ürünleriyle birleştirerek hızlı, güvenli ve kullanıcı dostu arayüzleri ile finansal deneyimleri kolaylaştırmaktadır.
Rubikpara olarak büyüyen ekibimize \"Mobile Senior Software Engineer\" arıyoruz!
Senden ne bekliyoruz?
- Üniversitelerin Bilgisayar Mühendisliği, Yazılım ya da diğer ilgili bölümlerinden mezuniyet,
- Mobil uygulama geliştirme konusunda 5+ yıl, Flutter özelinde 3+ yıl deneyim,
- State management (GetX, Bloc, Provider) kütüphanelerinde ileri seviye tecrübe,
- Clean Architecture, MVVM gibi tasarım kalıplarına ve prensiplerine hakimiyet,
- Object Oriented Programming (OOP), SOLID prensipleri ve Design Patterns konularına hakimiyet,
- RESTful API entegrasyonlarında deneyim (Dio, Retrofit kütüphanelerini kullanmış),
- Android (Kotlin/Java) veya iOS (Swift/Obj-C) native platformlarından en az biri hakkında bilgi ve birikim; gerektiğinde native modül ve platform channel yazabilen,
- CI/CD süreçleri, Flavor yönetimi (Development/Staging/Production) ve uygulama market süreçlerine (App Store & Google Play) hakimiyet,
- Git versiyon kontrol sistemini etkin kullanabilme becerisi,
- Mobil güvenlik pratiklerine (SSL pinning, secure storage, şifreleme, root/jailbreak tespiti) hakimiyet,
- Unit / Widget testleri ve E2E test otomasyonu (Maestro, Patrol vb.) konusunda deneyim,
- UI/UX prensiplerine önem veren, tasarımcılarla uyumlu çalışabilme,
- Kod kalitesine önem veren, Code Review süreçlerini yürütebilme,
- Tercihen fintek, banka veya ödeme kuruluşlarında deneyim.
Aramıza katıldığında neler yapacaksın?
- iOS ve Android platformları için Rubikpara mobil uygulamalarının uçtan uca tasarlanması, geliştirilmesi ve sahiplenilmesi,
- Para transferi, QR ödeme, fatura ödeme, kart ve KYC gibi kritik finansal akışların geliştirilmesi,
- Native (Kotlin/Swift) taraflı entegrasyonların geliştirilmesi ve sürdürülmesi,
- Yenilikçi çözümler tanımlamak ve uygulamak için ürün yöneticileri ve tasarımcılarla işbirliği yapılması,
- Sorunsuz bir kullanıcı deneyimi sağlamak için uygulama performansının optimize edilmesi,
- Build, sürüm ve store yayın süreçlerinin yürütülmesi,
- Kod incelemeleri yapılması ve ekip üyelerine yapıcı geri bildirimde bulunulması,
- Sorunların zamanında giderilmesi ve çözülmesi,
- Sektördeki en son trendler ve teknolojilerle güncel kalınması.