Android Developer
at Exciting opportunity with a Product Development Company
The Android Developer will design and develop Native Android and Hybrid applications to meet the
functional requirements of products developed by STPL & Trinity Axis Inc. Develop native android
applications including front-end and back-end code. Make use of well-established design patterns and
architectures while following agile development processes. Perform unit testing of the code
developed, and develop unit test cases and test harnesses. Perform system integration and bug fixing,
develop user documentation, generate relevant reports and review similar work done by peers.
Measures of Success
Read and understand high level product descriptions or requirement documents and propose
one or more software designs at the module level that are highly reusable and subject to the
design principles of SaaS Platforms
Decompose design elements into structured code as per prevailing coding guidelines,
preparation and execution of unit test cases and development of test codes or test harnesses.
Trace back through code, design and resolve issues and bugs
Document work, software designs, code and record and produce test reports and release
notes.
Plan, organize and execute assignments with very little or moderate supervision
Code individually and willing to participate in every aspect of the android application
development process
Responsible for deliveries in the required deadlines. Deliveries can be modules,
documentation, customer releases etc.
Coordinate with the team for timely delivery of work products. Ensure the quality of products
by reviews
Sub-Module level responsibility in large projects and Module (or component) level
responsibility in small / medium sized projects and complete responsibility in small sized
projects, depending upon the complexity and decomposition
Work with the QA team to ensure the validity of the solution
Participate in the recruiting of team members as and when deemed necessary
Be contemporary by adopting technological and market evolutions
Other responsibilities as assigned by management from time to time
Skills & Experience Required
Good understanding of software development methodologies tools, techniques, practices
and excellent problem-solving skills in various applications- mobile, tablet, kiosk, handheld
device
Solid hands-on programming experience with RESTful APIs
Strong Experience in developing Native Android applications using Android Studio/ Eclipse
Experience with cross platform tools such as React- Native/ Ionic/ Flutter/ Cordova
Experience in developing Hybrid applications (ios & android)
Experience with offline storage, threading, and performance tuning
Hand-on experience in sqlite database integration
Knowledge of Chart API and other Google APIs and UI & UX desig ning.
Experience in Android SDK
Integration with backend services
Experience with IOT related mobile application projects
Experience in IOT related projects (monitoring, controlling, OTA updates)
Worked with Embedded related projects and embedded teams
Worked in BLE connectivity with devices.
Experience or knowledge of chat applications.
Experience in Barcode, RFID integration with android devices.
Ability to integrate various libraries and SDKs
Worked on interactive Android Kiosk applications
Similar jobs
- Design and build highly reliable and performant applications that deliver a great user
experience.
- Own large technical deliverables and execute in a structured manner.
- Take the accountability of the overall health of the applications you build.
- Platformize components as libraries, utilities and promote reuse.
- Be able to conceptualize and develop prototypes quickly
Skills & Requirements
▪ Work Experience between 4 to 10 years in large scale applications with desire to work in fast
paced startups
● Thorough understanding of React Native and its core Principles.
● Hands-on experience on React Native Framework at least 2 years.
● Good Knowledge of HTML5, CSS3.
● Familiarity with GIT, RESTful APIs and modern front-end build pipelines and tools.
Android Developer
Skills Required: -
- Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen sizes
- Familiarity with RESTful APIs to connect Android applications to back-end services
- Strong knowledge of Android UI design principles, patterns, and best practices
- Experience with offline storage, threading, and performance tuning
- 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
- Ability to understand business requirements and translate them into technical requirements
- Familiarity with cloud message APIs and push notifications
- A knack for benchmarking and optimization
- Understanding of Google’s Android design principles and interface guidelines
- Proficient understanding of code versioning tools, such as Git
- Familiarity with continuous integration
- Should be good in Socket.io and Google map api integration expert.
Android Developer Requirements:
- Degree in software development, computer science, or similar.
- Proficiency in Java, Kotlin, or C++.
- Ability to use the Android Studio, including the Android SDK, with ease.
- Prior experience as an android developer will be advantageous.
- Excellent coding and proofreading skills.
- Top-notch teamwork and communication skills.
- Ability to manage your workload with minimal supervision.
Technical Requirement :
- Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen sizes
- Familiarity with RESTful APIs to connect Android applications to back-end services
- Strong knowledge of Android UI design principles, patterns, and best practices
- Experience with offline storage, threading, and performance tuning
- Strong knowledge in SQLite Database
- Experience in designing and developing custom controls for Android.
- Solid foundation in data structures, algorithms, and object orientation design.
- Capabilities to write and execute unit test cases.
- Independent researching, solution finding, analysis and problem solving skills and capabilities.
- Should have a strong knowledge of OOPS and intermediate knowledge of front-end GUI design and development.
- Should have knowledge of Kotlin
- Should have experience in MVC / MVVM Architecture.
- Good in Analytics and Communication
Job Title:
Senior software Development Engineer
Department:
Android - Technology
Based at:
Bangalore
Reports to:
Engineering Manager
Experience:
4 years to 7 years
Required Qualification:
B.tech from Top tier college
Company Overview:
At Porter, we are passionate about improving productivity. We want to help businesses, large and small, optimize their last-mile operations and empower them to unleash the growth of their core functions. Last mile delivery logistics is one of the biggest and fastest growing sectors of the economy with a market cap upwards of 50 billion USD and a growth rate exceeding 15% CAGR.
Porter is the fastest growing leader in this sector with operations in major cities, a fleet size exceeding 1L registered and 50k active driver partners and a customer base with 3.5M being monthly active. Our industry-best technology platform has raised over 150 million USD from investors including Sequoia Capital, Kae Capital, Mahindra group, LGT Aspada, Tiger Global and Vitruvian Partners.
We are addressing a massive problem and going after a huge market. We’re trying to create a household name in transportation and our ambition is to disrupt all facets of supply chain. At Porter, we’re here to do the best work of our lives.
If you want to do the same and love the challenges and opportunities of a fast paced work environment, then we believe Porter is the right place for you.
Company URL: https://porter.in/
Porter has multiple mobile apps used by our consumers - app used by our customers to place on-demand orders, app used by our drivers to service those orders, and app used by fleet owners to manage their vehicles on our platform. Each of these apps is frequently iterated over to improve functionality and experience. In such a fast paced environment, we expect our mobile developers to develop and maintain these complex apps with a heavy focus on code design to keep the code easily extensible and maintainable.
Responsibilities:
● Participate in the product life cycle to understand directly from the Product Team the expected behavior of the apps and the use cases being implemented.
● Participate in design discussions with heavy focus on modeling entities and interactions, following architectural patterns like MVP, MVVM, Clean Architecture, etc.
● Collaborate with cross-functional teams - backend teams for finalizing APIs, design team for UI / UX, QA team for testing, etc.
● Participate in iteration planning to give effort estimates.
● Write clean, readable, maintainable and performant code following well established design principles.
● Write Unit Tests and Integration Tests to ensure correctness.
● Track, debug and fix bugs & crashes escalated.
● Ensure the apps are performant - no memory leaks, no frame drops, battery usage, etc.
● Explore and evaluate new technologies, tools and SDKs as may be necessary to improve the entire development pipeline.
● Work with cross-platform technologies, like Kotlin Multiplatform, to ensure consistency of features and code reuse across Android / iOS platforms.
Technologies:
● Languages: Kotlin, Java, SQL
● Frameworks: RIBs, Kotlin Multiplatform, Spek
● Architectures: MVVM, MVP, Clean Architecture, etc
● Libraries: Kotlin Coroutines, RxJava, Dagger2, Ktor, Jetpack, etc
● Integrations: AWS services, Payment Gateways (Razorpay, etc), Google Maps, Firebase, etc
Products & Systems Overview
You will be contributing to products concerning both customers and partner drivers.
● Customer App:
■ All orders serviced by Porter are placed from this app making it our primary business driver.
■ To keep the code for this large complex app maintainable, there is a heavy emphasis on good design and architecture. Currently the RIBs framework is used to break the code recursively into smaller components.
■ To ensure feature parity and consistency across our Android and iOS platforms, we use Kotlin Multiplatform to re-use business logic code across the two platforms.
● Partner App:
■ All orders serviced by Porter are fulfilled by drivers using this app.
■ Given that the app is expected to run for long hours on cheaper phones there is a heavy emphasis on keeping the apps performant - optimizing battery consumption and memory usage.
■ The app serves as a medium for onboarding - providing functionality for partners to upload and verify their documents using Image Processing.
■ To train the drivers for every new feature launched, we provide a guided audio-visual training session - using visual cues like hint to click / swipe with synchronized pre-configured audio to guide him through the sequence of steps.
● Fleet Owner Apps:
■ A multi-platform app for fleet owners to manage their drivers and track their performance and earnings on our platform.
Qualification Prerequisites
● Experience: >= 4 years in Android development
● Proficiency with Android framework and Kotlin.
● Experience in designing, writing and maintaining a large complex app code base.
● Experience with design patterns like MVP, MVVM, Clean Architecture, etc.
● Experience with reactive & asynchronous programming using RxJava / Coroutines / Flows
Job brief
We are looking for a Mobile App developer to produce scalable software solutions. You’ll be part of a cross-functional team that’s responsible for the full software development life cycle, from conception to deployment.
As a Mobile App developer, you should be comfortable around React Native, Javascript, React / Vue, development frameworks, and third-party libraries. You should also be a team player with a knack for visual design and utility.
If you’re also familiar with Agile methodologies, we’d like to meet you.
Responsibilities
- Work with development team to ideate software solutions
- Develop and manage well-functioning databases and applications
- Write effective APIs
- Test software to ensure responsiveness and efficiency
- Troubleshoot, debug and upgrade software
- Create security and data protection settings
- Build features and applications with a mobile responsive design
- Write technical documentation
Requirements
- Proven experience as a React Native App developer or similar role
- Experience developing desktop and mobile applications
- Familiarity with MERN / MEAN
- Knowledge of React Native, Javascript
- Knowledge of JavaScript frameworks like Node.js, ES6
- Familiarity with MongoDB, web servers (e.g. Apache) and UI/UX design
- Excellent communication and teamwork skills
- Great attention to detail
- Organizational skills
- An analytical mind
- Degree in Computer Science, Statistics or relevant fie
- Writing clean code.
- Building reusable code
- Leverage native API's for deep integrations with both platforms, diagnose and fix bugs and performance bottlenecks for performance that feels native.
- Architecting and building new apps from scratch.
- Converting existing browser-based applications to mobile.
- Developing high performance multiuser social media networking and analytics centric mobile apps.
- Developing high performance multiuser mobile apps.
-
Performing and developing proper unit tests.
-
Performing additional duties as determined by business needs and as directed by management.
-
Working on bug fixing and improving application performance.
- The ideal candidate will have 2-3 years of experience.
- Entrepreneurial with a founder mindset.
- Ambitious, willing to work hard and invest in building a great career.
- Candidate who care more about what they learn and the impact they make.
- Take ownership of all tasks.
- Believe in work-life integration. passion > work-life balance.
- Must have experience into Android/ IOS Development
- Must have experience into Hybrid apps Development
- Willing to work with cross-platform frameworks
- Experience with consuming REST APIs.
- Experience with Git
- Your primary focus will be the development of Android 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, commitment to collaborative problem solving, sophisticated design, and creating quality products is essential.
Skills :
- Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen sizes
- Familiarity with RESTful APIs to connect Android applications to back-end services
- Strong knowledge of Android UI design principles, patterns, and best practices
- Experience with offline storage, threading, and performance tuning
- Ability to design applications around natural user interfaces, such as touch
- Familiarity with the use of additional sensors, such as gyroscopes and accelerometers
- Knowledge of the open-source Android ecosystem and the libraries available for common tasks
- Ability to understand business requirements and translate them into technical requirements
- Familiarity with cloud message APIs and push notifications
- A knack for benchmarking and optimization
- Understanding of Google's Android design principles and interface guidelines
- Proficient understanding of code versioning tools, such as Git
- Familiarity with continuous integration - Kotlin, Java
- Important libraries include Dagger, RxJava, Realm - MVP Clean Architecture
- Understanding of Data Structures and Algorithm.
- Basic Knowledge of Kotlin
- Skills : - Android, Web Sockets, MVP Development, Rxjava, Realm Mobile Database,
- Min 2-3 years of experience in Mobile App/Android development
- Min 1 year of experience in Kotlin
- Immediate joinee are preferred
- Experience with different programming paradigms, esp. functional and reactive programming
- Strong in writing unit test cases
- Experience with offline storage, threading, and performance tuning
- Familiarity with RESTful APIs
- Familiarity with git and continuous integration
- Proficiency in various software design patterns
- Exposure to agile/scrum
- Excellent communication skill
At Navi, our mission is to build financial services that are simple, accessible and affordable.
Navi is founded by Sachin Bansal & Ankit Agarwal to build consumer-centric and technology-driven businesses in the BFSI (Banking, Financial Services & Insurance) space.
Responsibilities:
- Work on the development of the Android app for our first product
- Write clean, well-tested code
- Optimise app performance using real profiling data
Requirements:
- 3+ years of software development experience
- Strong computer science fundamentals
- Deep knowledge of Java and Android SDKs, familiarity with Kotlin
- Can write code that is readable, maintainable and testable
- Know the importance of tests and how to approach writing different types of tests
Bonus:
- Know how to use test driven development as a design tool
- Seek to identify key underlying ideas and use those as building blocks before reaching for shiny new tools
https://docs.google.com/document/d/18eWIOPYs0Hi8Kr4lXTtP_XMJp_4BrBzOd9Eui8v_l-c/edit?usp=sharing">favourite books