At Cityflo, we are solving the problem of commuting to the office which affects employees in big, populated Indian cities every day. Cityflo provides a bus experience like no other - we run premium AC buses for daily commuters. We’re changing the way urban Indians commute and enabling everyone to reclaim hours of their time every day. Before the imposed lockdown due to coronavirus, we were serving about 7500 commuters per day. We plan to scale to 5,00,000 rides per day in the next 4 years in a profitable and sustainable manner.
We're looking for people who are passionate about creating great Android applications.
You've been around for a few API levels and you know how to delight Android users. You’ve got an eye for the beautiful Android design our users expect and an attention to detail down to the very last dpi. You know your way around the View hierarchy and are eager to partner with Product and Design to craft efficient, performant, and delightful user experiences. You like building for the long term and value patterns and structures that allow for maximum flexibility in a constantly evolving product.
You can read more about our engineering and culture on our blog: https://blog.cityflo.com/tag/engineering/" target="_blank">https://blog.cityflo.com/tag/engineering/
What you should have:
- At least three years of engineering experience, a large portion of which in a team environment
- Bachelors/Masters degree in Computer Science, Engineering, or a related subject.
- Strong computer science fundamentals: data structures, algorithms and programming languages
- Experience working closely with product teams, designers, and other developers to create a truly delightful mobile experience
- Familiarity with design concepts and constraints on mobile platforms.
- Extensive understanding of Android framework components and their respective lifecycles
- Experience developing highly performant Kotlin code and view layouts and the ability to diagnose performance bottlenecks
- A disciplined approach to development, testing, documentation and code structure in a team environment
- Familiarity with the Android tool ecosystem for development, testing, debugging, and performance benchmarking
- An excellent understanding of best practices for concurrency and threading
- MVVM design architecture pattern for android.
Preferred skills:
- Open Source contributions & participation in programs like Google Summer of Code are a plus.
- Have published one or more Android apps on the Play Store.
- Dependency injections: Dagger, Koin.
- Multi-threading and coroutines in Kotlin/Rxjava.
About Cityflo
Similar jobs
Technical Skills & Qualifications:
- 1. Native iOS and Android Development: Strong experience in native development for both platforms, ideally with prior experience in developing open-source SDKs.
- 2. Android Skills: Proficiency in Kotlin and Java, with solid experience in Android Views and Jetpack Compose. Familiarity with Gradle for Android builds and dependency management is essential.
- 3. iOS Skills: Proficiency in Swift, with hands-on experience in both UlKit and SwiftUl. Familiarity with CocoaPods and Swift Package Manager (SPM) for iOS dependency management is required.
- 4. Cl/CD Experience: A strong understanding of Cl/CD pipelines, with practical experience in automating builds and deployments.
Additionally, experience with Flutter SDK development would be a plus. We would ideally prefer a candidate with stronger iOS experience to support our current needs.
Job Description:
We are looking for an Android Developer passionate about pushing mobile technologies to their limits. This Android app developer will work with our team of talented engineers to design and build the next generation of our mobile applications. Android programming works closely with other app development and technical teams.
Experience: 2 to 3 years
Location: Chennai
Responsibilities:
- Unit-test code for usability, and general reliability
- Submitting Andriod applications to clients for review and Google Play Store
- Design and Build advanced applications for the Android platform
- Continuously discover, Evaluate, and implement new technologies to maximize development efficiency
- Collaborate with cross-functional teams to define, design, and ship new features
Ongoing development of existing Android projects - Work on bug fixing and improving application performance
- Working with backend developers for API requirements in the apps
- Work with outside data sources and APIs
- Developing/customizing Android Applications.
Requirements:
- 2-3years of developing Andriod Applications
- Android mobile application design and development with an in-depth understanding of Android Architecture, Framework, Android SDK, Core Java, Kotlin, and Android debugger.
- Experience with IOS development would be an added advantage
Skilled at writing Unit Tests. - Ensure a smooth and robust application at the front end for a seamless experience for the customers
- Strong Verbal and written communication skills
- Knowledge of hardware communication via Android / NDK build / BLE is a plus
- Deliver across the entire app life cycle - design, build, deploy, test, release to app stores, and support
- Should have knowledge about versioning tools preferably GIT
- Participating in the UX design discussions by providing inputs related to the lasted android and IOS native UX design guidelines
- FireBase / AWS integration
- REST API integration / JSON understanding Familiar with the usage of database utilities outside of android
- GPS Tracking, Bluetooth integration with apps.
Job Description:-
We are looking for an IOS developer responsible for the development and maintenance of applications aimed at a range of IOS devices including mobile phones and tablet computers. Your primary focus will be the development of IOS applications and their integration with back-end services. You will be working alongside other engineers and developers working on different layers of the infrastructure. Therefore, a commitment to collaborative problem-solving, sophisticated design, and the creation of the quality product is essential.
Responsibilities:-
- Design and build applications for the IOS platform.
- Ensure the performance, quality and responsiveness of applications.
- Collaborate with a team to define, design, and ship new features.
- Identify and correct bottlenecks and fix bugs.
- Help maintain code quality, organization and automatization.
Skills:-
- Proficient with Objective-C or Swift, and Cocoa touch
- Experience with IOS frameworks such as Core Data, Core Animation, etc.
- Experience with offline storage, threading and performance tuning.
- Familiarity with RESTful APIs to connect IOS applications to back-end services.
- Knowledge of other web technologies and UI/UX Standards.
- Understanding of Apple's design principles and interface guidelines.
- Knowledge of low-level C-based libraries is preferred.
- Experience with performance and memory tuning with tools such as Instruments and Shark, depending on project needs.
- Familiarity with cloud message APIs and push notifications.
- A knack for benchmarking and optimization.
- Proficient understanding of code versioning tools such as Git, Mercurial or SVN.
- Familiarity with continuous Integration.
● Experience Level: 2+ years
● Experience using Android Studio, Android SDK, Kotlin, Agile Methodologies (e.g.
Scrum, Kanban)
● Excellent Understanding of Android app architecture and use of design patterns,
Android UX/UI guidelines/best practices and the ability to engage with the creative
team to deliver pragmatic solutions, balancing design, quality and velocity.
● Flair for clean code, reusability, testability and readability (SOLID, TDD)
● Good Communication skills.
About the Role
As an Android Developer, you will own the Android app and strive to deliver the best learning experience out there to our learners that upGrad is known for. You will be responsible for developing features, taking those features to production and maintaining the existing code. Innovative nature and pro-active involvement in the product is taken very seriously at upGrad, therefore, a major part of your role would involve thinking about new features and new ways to deliver quality learning experience to our learners
Skills/Experience
- Minimum 6+ years of hands-on Android development experience.
- Strong Java and object-oriented concepts.
- Solid understanding of Android architectural patterns especially MVVM and their importance in scalable software development process.
- Strong understanding of Android fundamentals.
- Experience in Android UI creation.
- Experience of Android Live Data, Kotlin and Constraint layout would be a huge plus point.
Years of Exp – Minimum 6-8
Responsibilities
- Build pixel-perfect UIs across both mobile platforms.
- Leverage native APIs for deep integrations with both platforms.
- Diagnose and fix bugs and performance bottlenecks for performance that feels native.
- Maintain code and write automated tests to ensure the product is of the highest quality.
- 1- 3 years as a professional software developer.
- Experience with React, React Native and Redux
- Experience with at least one native mobile platform (bonus points if you moved to React Native from iOS or Android development).
- Firm grasp of the JavaScript language and its nuances, including ES6+ syntax. Knowledge in TypeScript is a plus point.
- Knowledge of functional and object-oriented programming.
- Familiarity with native build tools, like Xcode & Android Studio.
- Understanding of REST APIs, the document request model, and offline storage.
We are looking for passionate professionals who are crazy about breaking the norms and make people take notice. You should be obsessively result oriented, willing to take informed risks and learn fast from your mistakes. You’ll be working directly with the founders on the technology platform. Being part of the core team, will be working on challenging problems and will have complete ownership of various features of the products. Your opinion will count and your ideas will translate into reality. The position will be based out of Bangalore. You will, perhaps, lead our engineering efforts eventually.
Roles and Responsibilities
- Proficiency in Android / Swift with Cocoa Touch
- Knowledge of Google Play store Guide lines with Apple Human Interface Guidelines
- Familiar with Android Studio with iOS SDK (UIKit, Core Data, Core Location, etc.)
- Knowledge of (JSON, XML, SOAP, REST) with Familiarity with RESTful APIs to connect
- Android and iOS applications to back-end services.
- Knowledge of SQLite, MySQL or similar database management system
- Must have sound knowledge in react native.
- Familiarity with cloud message APIs and push notifications.
- Experience with source control systems (Subversion,Git)
- Preference for Mobile App development using React native.
- Knowledge of HTML5, JavaScript, jQuery, Ajax is an added advantage.
What is the Job like?
- Architect super configurable mobile SDKs - the one’s which are written in native but are server-controlled
- Build a suite of Mobile Backend services which will control the SDK distribution and mobile configurations
- Fantasy the idea of composing a mobile application from different components rather than build every application from scratch
- Expertise in security - cryptography, encrypted secure storage, mobile security to power our super-secure payments originating from mobile devices
- Work on a framework to let mobile developers build their mobile screens on multiple stacks - native, server-driven, web, react-native, flutter, ionic etc.
Who should apply?
- Bachelor’s/Master’s degree in engineering (computer science, information systems)
- 8+ years of experience building enterprise systems including at least 2 years of direct people management experience
- Worked on large scale mobile applications with a good understanding of mobile stack
- Good understanding of server stack as well so as to have a good understanding of the entire story
- Good understanding of SDK distribution using maven, pods, xcframeworks etc
- Analyse, design and architect, develop and maintain software solutions across multiple projects
- Direct and provide ongoing leadership for a team of individual contributors, set objectives, review performances, define growth plan and nurture.
- Drive best practices, and is a pro with agile methodologies/practices - SCRUM, Test Driven Development (TDD)
- Manage headcount, deliverables, schedules across ongoing projects, ensure that resources are appropriately allocated and timelines are met in accordance with the project roadmaps