


Roles and Responsibilities
Create & manage world-class apps that have the potential of reaching millions of users.
Roles and responsibilities include -
1. Addition of new features to existing app and making sure minimal crash rate and ANR
2. Adding new AI models built by the data science team into the android environment
3. Creating reasonable timelines and making sure delivery is according to planned schedules
NOTE -
+ Premier institute(s) preferred - but not a requirement for the job.
+ Salary is negotiable based on your skillset

About SpiralDevApps
About
We create products and scale them to be the top apps - everyday millions of users use our products and make their lives easier - some of our main products include - docx, email apps, document scanners and other productivity apps. We are on a mission to make easy to use products out of India.
Connect with the team
Similar jobs


Mandatory skills:
- Proficient with Objective-C and Swift depending on project requirements and Cocoa Touch
- Experience with iOS frameworks such as Core Data, Core Animation, etc.
- Familiarity with RESTful APIs to connect iOS applications to back-end services
Secondary Skills:
- Experience with offline storage, threading, and performance tuning
- Knowledge of other web technologies and UI/UX standards
- Understanding of Apple's design principles and interface guidelines
- Experience with Version Control System
- Experience with Bug Tracking
Added advantage if the candidate possess below skills.
- 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
- Bluetooth communication, BLE
- Performance and Security related Concepts



Must Good to Have Details :
- Must have at least 1 year of experience on React Native along with architecture experience in Mobile Applications.
- Have strong knowledge of App UI design principles, patterns, and best practices
- Familiarity with native build tools, like XCode, Gradle, Android Studio IntelliJ, VsCode
- In-Depth Knowledge of React, React Native, TypeScript or JavaScript Redux, Hooks, ECMAScript (ES6, ES7 etc.), Node, NPM and iOS & Android Build systems
Must have :
- Understanding of REST APIs, the document request model, and offline storage and must have on React Native chart Library
- Working knowledge on Sending Notifications with APNs & FCM
- Experience working with Backend Web Services (like REST etc), Fetch API, and Axios and knowledge of Databases (Relational, Distributed etc.)
- Experience in integrating libraries like React Navigation, React Native, Firebase, Social Logins (Facebook, Google, Apple etc.), Push Notifications etc.
- Responsive layouts in both platforms in reactive native using Media Query & Flexbox
- Sound knowledge of Design Patterns like Creational, Structural, and Behavioral
Good to have :
- Working experience on third-party dependencies and debugging - dependency conflicts
- Must be able to integrate native code in react-native and expo Modules
- Able to generate builds for both IOS(.IPA) and Android (APK) Platforms and experience in hosting apps on respective Stores(AppStore, PlayStore).
- Professional Communication (written, verbal presenting)
- Open to learn and adapt to new technologies
- Go-getter, Result oriented Creative & Innovative approach
- Excellent Communication Skills

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


- Designing and building mobile applications for Apple’s iOS platform.
- Collaborating with the design team to define app features.
- Ensuring quality and performance of the application to specifications.
- Identifying potential problems and resolving application bottlenecks.
- Fixing application bugs before the final release.
- Publishing application on App Store.
- Maintaining the code and atomization of the application.
- Designing and implementing application updates


Slack for Construction Industry
It helps construction project owners and contractors track on-site progress in real-time
to finish projects on time and in budget. We aim to bring the speed of software development to infrastructure development.
Founded by IIT Roorkee alumni and backed by industry experts, we are on a mission to help the second largest industry in India-Construction make a transition from pen and paper to digital.As a productivity app startup, we value productivity and ownership most. That helps raise our own bar and the bar of people we hire.We follow agile and scrum approaches for product development and use best-of-class tools and practices. Measuring our progress on a weekly basis and iterating fast enables us to build
breakthrough modules and features rapidly.
Responsibility -
● Improve app architecture to make the product more modular, scalable
● Setup best practices and metrics for app performance
● Translating designs and wireframes into high-quality code
● Building reusable and responsive components and maintaining modularity for future use
● Optimizing components to avoid memory leaks and improve rendering time
● Ensuring availability across with range of iOS versions
● Collaborate with cross-functional teams to define, design, and ship new features.
Techstack -
● Knowledge about delegates, protocols, notifications, and application life cycle.
● Language - Swift, Platform - Xcode
● MVVM and Coordinator design pattern
● Knowledge of RxSwift
● Familiarity with Moya, Almofire, and RESTful APIs
● UIKit and Storyboard
● Know-how of Unit testing and xc-test
●Experience working with background activities and offline mode apps is a big plus
● Familiarity with ContactsUI, SnapKit, Push Notification Service, etc third party
framework/SDK is a plus
● Version control, CI/CD, and writing clean code


-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 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
-Understanding of Apple’s design principles and interface guidelines
-Familiarity with cloud message APIs and push notifications
-Knack for benchmarking and optimization
-Proficient understanding of code versioning tools such as Gift


Job Description
We are looking for anmobile iOS developer. The ideal candidate needs to be able to hit the ground running in our fast-paced environment, and be comfortable to iterate quickly and push new code every day.
Responsibilities
- Design, develop, test, deploy, maintain and improve software and processes
- Integration with a number of third-party services
- Write high quality, high-performing and well-tested code
- Turn design requirements and prototypes into a working app
- Work closely with the technology and design teams
- Excellent communication, collaboration, and documentation
- Highly motivated, adaptable and passionate learner with a strong work ethic ethic
Requirements
- Proficiency with Objective-C and Swift
- Deep knowledge of the iOS SDK, OO, data modelling, design patterns, TDD/BDD, JSON/RESTful APIs, clean code and UX
- Analysis, profiling and optimization techniques
- Agile methodology


• Well verserd on Swift 5.* and objective C, Keywords and programming technics
• Basic understanding and programming capabilities on the programing languages like Reactive JavaScript, Dart atleast one of the 2
• Willing to learn new technologies and programming languages
• Good knowledge of iOS and its related components like (Foundation, UIKit, AVFoundation, LocalAuthentication, CoreLocation, CoreData, SwiftUI, iPadOS, CoreImage, VideoToolBox, AudioToolBox, Social, CoreBlueTooth, MapKit, StoreKit)
• Very Strong knowledge with Protocols, Extensions, Swift Playgrounds
• Experience with REST full APIs and Data serialization using the latest methods
• Experience with offline storage, threading, and performance tuning.
• Knowledge of the 3rd party SDKs/Cocopods/Swift Packages available out in the market
• Understanding of Apple's Human Interface Guideline and Review Policies
• Proficient understanding of code versioning tools, such as Git.
• Familiarity with CI/CD.
• Experience with performance and memory tuning with Instruments
• Familiarity with cloud message APIs and APNS
• A knack for benchmarking and optimisation
• Good at creating a good user experience
• Understanding of how to work on wearable technologies and IOT
Skills:
Swift 5.*
Objective C
Swift UI
Core Locations, Googles maps



• Own architecture, design, development, and implementation of different
modules/features of the Application
• Be up to date with the latest trends in Mobile App/React Native ecosystem
• Bring in industry best practices
• Take ownership to drive an initiative to completion
• Discover opportunities for performance improvements
• Recommend ways to improve reliability, efficiency and code quality
• Focus on continuous delivery and reducing complexity
• Carry out code reviews and manage pull requests within the mobile application
development team
Requirements
• Overall 5+ years of experience in Mobile Application development
• At least 2+ year of hands-on experience in developing Mobile applications with
React Native
• B.E/B.Tech in CS or equivalent streams from institute of repute (IITs, NITs, BITs,
IIITs or equivalent)
• Familiar with native build tools - XCode, Android studio, etc.
• Ability to write readable and maintainable JavaScript code
• Ability to build pixel-perfect user interfaces with smooth interactions
• Knowledge of Web technologies and concepts - HTML, CSS, REST APIs,
Caching, etc.
• Knowledge on Android and iOS fundamentals is a must
• Experience developing Android/iOS native applications using
Java/Kotlin/Swift/Objective C is a plus
• Mobile application development experience with Flutter/Ionic is a plus


