Role: ANDROID DEVELOPER
What you’ll do?
- Design and build advanced applications for the Android platform
- Collaborate with cross-functional teams to define, design, and ship new features
- Work with outside data sources and API's
- Unit-test code for robustness, including edge cases, usability, and general reliability
- Work on bug fixing and improving application performance
What Makes You A Great Fit?
- Have published one or more android apps on the Play store
- At least 3 years of experience in Android app development
- Strong knowledge of Android SDK/ NDK, different versions of Android, and how to deal with different screen sizes
- Familiarity with RESTful APIs to connect Android applications to back-end services
- Solid understanding of Object Oriented programming, data structures, algorithms and relational database
- Strong knowledge of Android UI design principles, patterns, and best practices
- Experience with offline storage, threading, performance tuning and firebase services
- Ability to design applications around natural user interfaces, such as touch
- Knowledge of the open-source Android ecosystem and the libraries available for common tasks
- Proficient with Java and Kotlin (including coroutines)
- Preference for good experience in the gaming industry, but experience in the B2C app is a must
- Knowledge of code versioning tools, such as Git, Bit bucket
- Familiarity with continuous integration
- Excellent work ethic and attention to detail
- Collaborative mind set

Similar jobs
Skills:
-Firm grasp of the JavaScript language and its nuances, including ES6+ syntax
-Build pixel-perfect, smooth 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
-Knowledge of functional and object-oriented programming
-Strong knowledge and experience in either iOS or Android native application development
-Familiarity with native build tools, like XCode, Android Studio,
-Familiarity with appstore/ playstore deployments
-Experience in working with REST APIs and offline storage
-Familiarity with integrating third-party dependencies and debugging dependency conflicts
-Ability to write well-documented, clean Javascript code
Key Responsibilities
-
Build, iterate, and enhance mobile applications on Android.
-
Continue to evaluate innovative approaches on Android and present new ideas to improve our offering on Android and other mobile platforms.
-
Ensures that code developed is easy to test, easy to understand, extensible and meets the quality guidelines of the business unit.
-
Partner closely with the design team to create an intuitively easy to use application for our users.
-
Bring new features in the course taking experience to the Android platform.
-
Optimize the existing code for ease of use and performance and improve quality.
-
Continue to improve the development process. Evaluate and implement new tools as needed.
-
Lead and Contribute to a team culture that values quality while fostering initiatives and innovation.
-
Knowledge of the common application/web security and OWASP vulnerabilities.
-
Knowledge of the encryption algorithms to protect sensitive information.
-
Knowledge of PII, PCI, HIPPA, and GDPR compliance and how to implement.
-
Understanding of security breaches of data-in-transit and data-at-rest and knowledge in implementation for both.
-
Knowledge/Aware of finding the vulnerabilities of the third-party components/libraries used in the application and remediating vulnerabilities.
-
Integrate with multiple devices & printers
Requirements
Required skillset:
Java, Android SDK, Rest API, SQLLite, Json, Enterprise mobility management (EMM) and EMV, POS application in Android(preferably version 4.4 Kitkat and API level 19 and above)
Good to have:
Play store deployment, push notifications, Web services, Android Location Services, Google Maps API, GIT
Desired Competencies:
Problem Solving Approach, Analytically strong, Time Management skills, Passionate to learn new technologies and working in an agile environment.
Your Role
Our team is looking for experienced mobile developers to lead the development of cross-platform mobile applications and be responsible for major technical decisions associated with them accountable for their successful execution.
In this position on the software engineering team, you’ll have the opportunity to contribute to many client and internal-facing products. FarmSetu’s suite of products spans multiple technical domains and disciplines in software and hardware, so experience in end-to-end systems thinking across distributed components is key for this role.
What You Will Do
- Design, implement and deploy mobile applications
- Lead the delivery of software projects in a team-based environment
- Collaborate cross-functionally with business users, product managers, customer success representatives and other engineers to define, design, scope and ship new features using elegant solutions.
- Provide recommendations for continuous improvement.
- Work alongside other engineers on the team to elevate technology and consistently apply best practices.
- Help others to improve the quality of their work through regular design and code reviews
- Deliver new features to production environments and support them in operation
- Participate in building the open engineering culture at FarmSetu
FarmSetu’s technology stack includes (but will not be limited to) Python, Django/Flask/FastAPI, GraphQL, Hasura, React, Flutter, Dart, Postgres, Celery, Docker, Git/Bitbucket to be deployed on Digitalocean/GCP infrastructure. We’re also quick to adopt better tools and processes, so you’ll be more than welcome to help shape our tool suite.
What You Will Bring to FarmSetu
- 2+ years of experience developing applications at an enterprise scale using the mobile technologies in our stack
- Ability to translate user experience design (mockups, wireframes and user journeys) into code
- Familiarity with Cloud/SaaS architectures and how to build secure and maintainable applications
- Strong understanding of unit testing, design patterns and usage of tools like profilers
- Experience with source control and continuous integration tools
- Worked in an Agile multi-functional team
- Thrive in an environment that requires you to partner with multiple cross-functional teams as stakeholders/customers
- Great oral and written communication skills
What We Offer
- Competitive salary
- Annual compensation reviews
- 12 days of annual leave plus public holidays
- Ongoing investment in you and your skills
- The right equipment for the job
Requirements
1. 5-7 Years of hands-on development on Android
2. Extensive understanding of Architectures - both old and new -> MVC to MVVM To Clean
3. Excellent In-depth understanding of Java and Kotlin Programming Languages
4. 2+ Years of managing android developers
5. Have worked on or scaled an app to more than 1mn downloads
6. Obsessed about long term solutions, yet understands business requirements to deliver projects quickly
7. Good understanding of backend technologies for better cross teamwork
8. Obsessed about app ratings, app vitals, and crash-free apps
Responsibilities
1. Lead the Testbook Android Team of 12+ Android Developers
2. Own the Testbook Android App (2Cr+ Installs) and its related 500+ Apps
3. Work extensively with Product Managers to deliver quality products and features
4. Improve the App Architecture and drive processes for code reviews, releases.
5. Take up occasional challenging Android coding tasks
About Us :
Responsibilities
- Advise and discuss with the team on the architecture and requirements.
- Bring your experience for mobile User Experience.
- Set up actions to ensure high level of quality and satisfaction
- Build and maintain efficient and reliable code.
- Support continuous improvement by investigating alternatives and technologies.
Skills
- Bachelor’s Degree in Informatics Engineering or similar
- Minimum of 4+ years work experience in similar roles
- Strong knowledge in Front-end frameworks (React Native)
- Strong knowledge in the mobile language (swift, objective-c, java, kotlin)
- Experience in unit testing and TDD.
- Advance knowledge in using testing frameworks ( Karma, Jest, Appium, Cypress ).
- Experience with Agile Methodologies (Scrum, Kanban)
- Experience in CI/CD
- Having a coaching profile, good communication skills is crucial to ensure good exchange and sharing of information within and outside of the train
- Being able to provide based on the audience synthetic or detailed information is mandatory
- Being curious to continuously learn and being a leader in your domain of expertise
- Immediate or very low availability
- Fluent in English - written and spoken (mandatory)
DESIRED SKILLS:
- Android Development
- Java / Kotlin
- Javascript
- UI / UX
- Prototyping and Wireframing
- Graphics and whiteboard application
- Video-streaming and camera handling on Android
Required Skills:
- Experience with Flutter SDK and Dart programming language.
- Strong knowledge on Flutter widgets like Cupertino for iOS and Material Components for Android.
- Knowledge on building flutter module and flutter plug-ins.
- Experience working on mobile platform like Android/iOS is required.
- Good knowledge in OOPS concepts and JAVA.
- Experienced in building mobile applications that utilizes web services (SOAP / REST / JSON / GSON).
- Worked on Dart.js
- Experience with third-party libraries and APIs.
- Good knowledge of database (MySQL, SQLlite, RealM).
- Knowledge on play-store publishing & distribution.
- Identify problems and bottlenecks before hand and report to the concerned personnel.
- Strong knowledge on mobile app development cycle and design principles.
- Good understanding of Android/iOS design guidelines, SDK and excellent JavaScript skills.
- Knowledge and experience with UX/UI design skills.
Responsibilities:
- Design and build advanced applications for the Flutter platform
- Collaborate with cross-functional teams to define, design, and ship new features
- Work with outside data sources and APIs
- Unit-test code for robustness, including edge cases, usability, and general reliability
- Work on bug fixing and improving application performance
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency
Strong written and verbal communications skills
• Software development metrics
• Agile software development
• Software Engineering processes
• Process Improvement
Desirable
• Experience managing software development organizations with greater than 100 resources
• Experience leading software efficiency improvement programs
• Experience with mobile app and server development
• Understanding of the process differences between product development and professional services
Qualifications
• Minimum 15 years of experience managing software engineering resources
• Degree in computing or engineering
Mandatory: Hands on experience working with Java or Kotlin. Very strong logical skills. Good hold on operating system concepts and data structure. Experience with web services , SQL Lite , camera kit , image caching concepts, keychain , past experience working with one of the design patterns like MVC / MVVM / MVP , network check implementation.
Good to have: Rx-Swift experience , video / image filter experience , media player usage , complex UX effects , couch-db , RealM.Knowledge of GIT management , Continuous Integration and Continuous Development practices.
Soft Skills: Strong communication skills , high spirited , eager to learn , able to perform in a high pressure environment
Seeing a project from conception to finished product.
Working alongside web developers.
Meeting both technical and end-user needs.
Expert knowledge of Native Mobile Development, Android SDK's, Rest APIs & API
integration
Knowledge on RDBMS & NoSQL
Strong understanding of SOLID principles and Object-Oriented Programming
Languages
Should have experience in Retrofit, Dagger, Animation,Canvas, Google Map APIs
In- depth knowledge on Android log analysis, performance issue analysis (Trace
View, Memory analyser tool).
Should have hands on experience on analysing the crash and ANR logs.
Should have prior experience in module design & defining interface between
modules.
Design, Develop & Prototype for Android phones and tablets (multiple screen sizes).
Write and maintain documentation for all features in development.
Work with product owner to meet specification needs
Collaborate with other developers to design and optimize code
Drive a best practices approach to the continuous improvement of our products,
processes, and tools.
Evaluating code to ensure it meets industry standards, is valid, is properly structured,
and is compatible with devices of all standard range (Mobile/Tablet).
VCS (Version control system): Git
Testing: Experience with unit testing and tools
Attention to detail
Creative vision
Good organizational skills
Good problem-solving skills
Patience, a big one
Identifying problems uncovered by customer feedback and testing, and correcting
Able to develop ideas and processes and clearly express them







