Years of Experience:3-7 Years
Notice:Immediate joiners
What are we looking for?
- BTech, MTech in Computer Science or a related technical discipline (or equivalent). Or high technical acumen and rich technical experience.
- Experience of 3-7 years building Android Applications.
- Strong expertise on building consumer-facing Android Apps with either Java or Kotlin, with strong programming constructs.
- Worked on building two or more Android apps
- Experience of managing E2E life cycle of Android Apps including play store deployments and post-deployment support.
- Experience of working with ReactNative would be a plus.
- The ability to independently lead problem-solving and build elegant, maintainable solutions to complex problems.
- Experience mentoring junior engineers
- Prior experience in working with Agile software methodologies ( Scrum, Kanban), TDD and Continuous
Intégration(CI/CD) a plus.
- Track record of building and delivering mission critical, 24x7 production software systems
Similar jobs
This is a full-time for a React Native Developer. The React Native Developer will be responsible for designing and implementing front-end and back-end app development, developing software solutions, and working with JavaScript and Redux.js . The React Native Developer will also be responsible for testing and debugging applications and must be able to work collaboratively with cross-functional teams to deliver quality products.
Qualifications
Expertise in Front-End Development and Back-End Web Development
Strong software development skills + String Design skills
Proficiency in JavaScript and Redux.js
Experience in building and testing React Native mobile applications
Knowledge of cross-platform mobile development frameworks
Ability to write clear, maintainable, and efficient code
Strong problem-solving and troubleshooting skills
Bachelor's degree in Computer Science, Software Engineering, or related field
Experience with Agile development methodologies is a plus.
Excellent communication and collaboration skills
3+ Years of experience in Android application development.
Strong knowledge of core JAVA and Kotlin.
Strong knowledge of Android SDK, Android Studio, different versions of Android, and how to deal with different screen sizes.
Strong knowledge of Android UI design principles, patterns, and best practices.
Solid understanding of the full mobile development life cycle.
Experience working with remote data via REST API.
Experience working with JSON and XML parser.
Strong knowledge of SQLite database.
Proficient understanding of code versioning tools, such as Git.
Should know how to release applications to the Google Play store.
Should have commercially published at least 3 applications.
Good to have knowledge of React native.
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
Minimum product development experience of 2+ years in Android mobile with expertise in designing and implementing high-performance Android mobile applications.
Thorough knowledge of Android APIs and platform capabilities (location-based capabilities within apps). Working knowledge of the mobile landscape, architectures, trends, and emerging technologies Experience with Android Studio and Gradle.
Must have knowledge of Android Architecture Components: Room, Work Manager, Material Design, Navigation, Lifecycle View Model, Google Maps, Retrofit, Camera 2, Paging, Data binding etc.
Have published one or more apps in the Play Store Well-versed in Java and JSON Complete knowledge of app testing, releasing and handling support tickets Handling push notifications from servers to the Android app
You will additionally work on innovative new app projects as well as internally incubated ventures.
Responsibilities And Duties
1. 1 year working as a full-time professional developer
2. Willing to work with cross-platform frameworks. •
3. Willing to learn and work on different mobile platforms/frameworks when needed.
4. Published at least one app on the Play Store
Note: Candidates from Premium Institutions are preferred
--Responsibilities--
- Translate designs and wireframes into high quality code
- Design, build, and maintain high performance, reusable, and reliable Java code
- Ensure the best possible performance, quality, and responsiveness of the application
- Identify and correct bottlenecks and fix bugs
- Help maintain code quality, organization, and automatization
--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
- 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
- Understanding of Google’s Android design principles and interface guidelines Proficient understanding of code versioning tools, such as Git
- Familiarity with continuous integration
Responsibilities:-
- Translate designs and wireframes into high-quality code
- Design, build and maintain high performance, reusable, and reliable Java
- code
- Ensure the best possible performance, quality, and responsiveness of the
- application
- Identify and correct bottlenecks and fix bugs
- Help maintain code quality, organization, and automatization
- Follow best practices in code implementation
- Willing to work on flexible time zones if required
Required 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 (preferred)
- 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
- Must have experience in Chat (one to one, group chat, file sharing)
- Knowledge in Google Maps APIs is preferred
Location: Noida, UP.
• based web and mobile applications using React ecosystem
• Work as a part of a small team that includes other react native
• developers, designers, QA experts, and managers
• Build app and UI components from prototypes and wireframes
• Work with native modules as and when required
• Use Native APIs for tight integrations with both platforms – Android and IOS
• Write automated tests to ensure error-free code and performance
• Improve front-end performance by eliminating performance bottlenecks
• Create front-end modules with maximum code reusability and efficiency
• Implement clean, smooth animations to provide an excellent user Interface
• Work with third-party dependencies and APIs
• Work with Redux architecture to improve performance of the websites/mobile apps
• Significant experience working with React web and mobile along with tools like Flux, Flow, Redux, etc.
• In-depth knowledge of JavaScript, CSS, HTML, functional programming, and front-end languages
• Strong knowledge of React fundamentals such as Virtual DOM, component lifecycle, and component state
• A complete understanding of the full mobile app development lifecycle right from prototyping
• Knowledge of type checking, unit testing, typescript, prop types, and code debugging
• Experience working with REST APIs, document request models, offline storage, and third-party libraries
• Strong understanding of web technologies like JavaScript, HTML, and CSS
• Knowledge of user interface design and responsive designs
• Well-versed in a variety of React Native software and technologies such as Jest, Enzyme, ESLint, and so on
• Experience working on large, complex web and mobile apps
• Ability to create and maintain smooth continuous integration and continuous delivery pipeline of React Native applications
• Understanding of React Native best principles and design aesthetics
• A positive mindset and continuous-learning attitude
• Stay updated with new updates, technologies, and news of React Native
• Ability to solve issues and contribute to libraries as and when needed
• Experience working in an agile development environment
• Strong verbal and written communication skills to communicate strategy
• Familiarity with modern front-end tools and building pipelines
• A collaborative approach to build apps and solve complex problems
• Attention to detail and problem-solving skills
• Client-focused approach with a goal of creating user-centric designs
• Good interpersonal, communication, and collaboration skills
• Ability to write clean, well-documented code that follows good coding practices
- Apply knowledge of Javascript (ES6) including all the latest features
- Usage of third party libraries for Maps, UI scaling, Styles, Secure storage, Permissions, Navigation, Splash screen, Network. Analytics. Push notifications, Localization, Calendar, etc.
- Build and run apps using Xcode, and Android Studio
- Persistence support using frameworks like Realm
- Comprehend performance issues and solve them
- Knowledge of Git (including merging, branching and resolving merge conflicts)
Desired skills
- Ability to create flexbox driven UI layout
- Configuring ESLint for JS code linting
- Being aware of alternate state management mechanisms like MobX
- Is proficient in either iOS or Android programming too.
Technical Skills
- Knowledge of all aspects of React framework
- Components, containers, JSX specification of component UI layout, Component lifecycle
- Props and State mechanism used for data flow
- Various kinds of views (text, button, scroll view, flat list, etc.)
- Navigation
- RN animations and gesture system fundamentals
- Redux state management library
- React Router usage
- JSON/XML parsing