The Senior Mobile Application Developer is responsible for designing the overall architecture of mobile applications (iOS/Android) and managing the interchange of data between the server and users. This role involves translating UI/UX design wireframes into actual code, implementing robust services and APIs, and optimizing applications for speed and scalability. The Senior Software Engineer will also create implementable SDKs or libraries, analyze requirements, prioritize tasks, and ensure the delivery of high-quality projects on schedule. This role requires strong collaboration with team members, adherence to Agile best practices, and a commitment to continual improvement.
Key Responsibility Areas:
● Design of the overall architecture of the mobile application (iOS/Android) following proper software design and architecture
● Strong experience managing the interchange of data between the server/users, translating the UI/UX design wireframes to actual code for visual elements of the application.
● Implementation of a robust set of services and APIs to power the mobile applications. Building reusable code and libraries for future use.
● Optimization of the application for maximum speed and scalability maintaining the time & space complexity.
● Ability to create implementable SDK or library for use by third-party apps like Robi, GP, Bkash, Nagad etc.
● Analyze requirements and understand the deliverables
● Identify, prioritize and execute tasks in the software development life cycle
● Review the code of other developers
● Collaborate with team members and ensure knowledge transfer
● Work closely with internal teams to fully understand the business process and requirements
● Ensure that projects are accurately estimated and delivered to schedule
● Actively contribute to the process of continual improvement, with regard to self, team, and systems
● Implementation of security and data protection in Mobile Applications.
● Integration of the front-end and back-end aspects of the mobile application.
● Analyzes and resolves multiple complex problems without direction.
● Understands and adheres to Agile best practices.
Qualifications:
- Bachelor's/Master's degree in Computer Science Engineering or relevant field
Experience:
● Minimum 3 years of experience in Mobile Application Development/ Software Development
Technical Skills/Knowledge:
● Must have experience in Swift or Objective-C
● Must have experience in Dart, Flutter
● Must have experience in Java or Kotlin
●Must have strong knowledge and understanding of Android, and iOS SDK
● Must have experience interfacing with API like REST, SOAP
● Must be familiar with application submission in Google Play and App Store
● Must have a good understanding of Android and iOS design principles and interface guidelines
● Should have basic familiarity with any relational database, like Microsoft SQL
● Server, MySQL, Oracle, etc.
● Good to have experience in Cross-Platform mobile application development frameworks like Flutter, IONIC, Xamarin
Behavioral Competencies:
● Ability to work independently
● Must have good knowledge of object-oriented software development
● Must have strong communication skills in English, both written and spoken
● Must have very strong analysis and synthesis skills
● Must be able to learn new technologies, tools, and techniques quickly and with minimal supervision
● Analytical mind with problem-solving aptitude
● Must be proactive and able to execute tasks efficiently
Interpersonal Skills
● Should be comfortable giving and receiving criticism, asking a lot of questions, and taking ownership