
Similar jobs
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
Experience: 3-5 Years 1 candidate & 1-3 Years 2 candidate
Skills:
Core JAVA(Native), Core Kotlin, Sqlite, MySQL, XML
Only Male Candidate
25% HIKE on Current Salary
We are looking for an Flutter Developer responsible for the development and maintenance of applications.The primary focus will be on creating new experiences and maintaining the acclaimed app. You will be working along-side other engineers and developers working on different layers of the infrastructure.
Responsibilities:
- Working closely with another mobile application developer leading the other platform development
- Deliver across the entire app life cycle –concept, design, build, deploy, test, release to app stores and support.
- Working directly with developers and product managers to conceptualize, build, test and realize products.
- Gather requirements around functionality and translate those requirements into elegant functional solutions.
- Working with web developers to create and maintain a robust framework to support the apps.
- Working with the front end developers to build the interface with the focus on usability features.
- Create compelling device specific user interfaces and experiences.
- Work on bug fixing and improving application performance.
- Optimizing performance for the apps.
- Keep up to date with the latest industry trends in the mobile technologies.
- Able to estimate the time required to complete project deliverable.
- Able to work in a fast-paced start-up environment.
Requirements
- Candidate must have flutter and dart experience.
- Minimum 2-4 years work experience in iOS / Android (Java/Kotlin and Objective-C/Swift)
- Strong in Android Java. Candidate should have a good understanding of thread management, memory management and other aspects of Java for mobile application development.
- Strong OO design and network programming skills.
- Strong written/verbal communication 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
- Experience with Knowledge and understanding of Firebase
- Proficient understanding of code versioning tools, such as Git
- Familiarity with cloud message APIs and push notifications
- Qualification- Any computer science graduate/postgraduate
*Should be experienced in unity game development.
*Responsible to Develop top quality 2D and 3D games for Android, iOS and Windows using Unity 3D engine
*Write well-designed, efficient code using C# / JavaScript
*Game development
*Coordinated with other Teams in Production like Artists/Game Testers/Game Designers to meet project deadlines.
DESIRED SKILLS:
- Android Development
- Java / Kotlin
- Javascript
- UI / UX
- Prototyping and Wireframing
- Graphics and whiteboard application
- Video-streaming and camera handling on Android
• Must-Have Worked With Flutter App Development.
• Excellent Ability To Develop & Understand Algorithms.
• Must Have Sound Knowledge Of Mobile Architecture.
• Strong Knowledge Of Integrating RESTful Web Services.
• Experience In Interacting With Web Services From The Flutter Mobile Platform.
• Experience With Offline Storage, Threading, And Performance Tuning.
• Experience With Push Notifications.
• Analytical, Problem Solving, And Decision Making Skills.
• Should Have Knowledge Of Client Requirements Analysis.
• Deliver Across The Entire App Life Cycle -Concept, Design, Build, Deploy, Test, Release To App Stores, And Support.
• Working Directly With Developers And Product Managers To Conceptualize, Build, Test, And Realize Products.
• Working With The Web Developers To Create And Maintain A Robust Framework To Support The Apps.
• Standardizing The Platform And In Some Cases Apps To Deliver Across Multiple Brands With Minimal Duplication Of Effort.
Eligibility Criteria :
• Minimum 2 Year Flutter Development Experience
• Strong Technical Background And Hands-On Experience In Android & IOS Applications Development.
• Managing The Day-To-Day Activities Of The Team, Project Planning, Milestones/Deadline Data Definition, Task Estimation, Etc
We are hiring for one of our clients (building an immersive platform for creators, from India, which can be used by creators to create content and engage their audience across the world. And they are looking for smart and motivated 'Mobile Engineers' to help build it.
For this, they need someone who has working knowledge in building quality mobile apps in React-Native/Flutter, handling device specific aspects, etc.
Being a Mobile Engineer at this organization will be like a feeling to build something that millions of users across the world can interact with. You will be helping in setting forth the mobile-frontend culture and journey.
Also, experience the working in the early team, shape a startup from the grounds up and be a part of the high growth journey.
Key Responsibilities: -
1. Build and deploy product features end to end.
2. You will build high quality features for a mobile app from grounds up, and can use patterns like composition, inheritance, renderProps, etc.
3. Research and implement things wherever needed, think automating via Fastlane CI/CD, testing logically so it works across multi-resolution devices, etc.
4. Setting up events for user, performance, and error analytics, think GA, hotjar, sentry, etc.
5. Participate in product and design ideation, collaborate with the team to implement high-quality features.
Requirements: -
1. Solid foundation in JS and React Native.
2. Passionate about product and drives it with engineering.
3. Architectural familiarity of implementation, not just UI features.
4. 1+ years of experience in building quality apps in React Native.
5. Identify and resolve performance and device specific issues.
6. Can adapt to best practices and learn device specific things in Android/iOS.
7. Code quickly and test thoroughly - maintain the balance between velocity and code health.
8. Great taste in UI and UX
Perks: -
1. Become a part of our early team, and shape products from grounds up
2. Attractive compensation and esops.
3. Macbook pro
4. Empowered to build an amazing startup culture with us
5. Full ownership and massive growth opportunities
6. and more...
The organization is funded by India's top executives and angel investors.









