Trivandrum
51 days ago
Developer III - Software Engineering - Kotlin,Android

Role Proficiency:

Independently develops error free code with high quality validation of applications guides other developers and assists Lead 1 – Software Engineering

Outcomes:

     Understand and provide input to the application/feature/component designs; developing the same in accordance with user stories/requirements.      Code debug test document and communicate product/component/features at development stages.      Select appropriate technical options for development such as reusing improving or reconfiguration of existing components.      Optimise efficiency cost and quality by identifying opportunities for automation/process improvements and agile delivery models      Mentor Developer 1 – Software Engineering and Developer 2 – Software Engineering to effectively perform in their roles      Identify the problem patterns and improve the technical design of the application/system      Proactively identify issues/defects/flaws in module/requirement implementation       Assists Lead 1 – Software Engineering on Technical design. Review activities and begin demonstrating Lead 1 capabilities in making technical decisions

Measures of Outcomes:

     Adherence to engineering process and standards (coding standards)      Adherence to schedule / timelines      Adhere to SLAs where applicable      Number of defects post delivery      Number of non-compliance issues      Reduction of reoccurrence of known defects      Quick turnaround of production bugs      Meet the defined productivity standards for project      Number of reusable components created   Completion of applicable technical/domain certifications Completion of all mandatory training requirements

Outputs Expected:

Code:

Develop code independently for the above


Configure:

Implement and monitor configuration process


Test:

Create and review unit test cases
scenarios and execution


Domain relevance:

Develop features and components with good understanding of the business problem being addressed for the client


Manage Project:

Manage module level activities


Manage Defects:

Perform defect RCA and mitigation


Estimate:

Estimate time
effort
resource dependence for one's own work and others' work
including modules


Document:

Create documentation for own work as well as perform peer review of documentation of others' work


Manage knowledge:

Consume and contribute to project related documents
share point
libraries and client universities


Status Reporting:

Report status of tasks assigned Comply with project related reporting standards/process


Release:

Execute release process


Design:

LLD for multiple components


Mentoring:

Mentor juniors on the team Set FAST goals and provide feedback to FAST goals of mentees

Skill Examples:

Explain and communicate the design / development to the customer Perform and evaluate test results against product specifications Develop user interfaces business software components and embedded software components 5 Manage and guarantee high levels of cohesion and quality6 Use data models Estimate effort and resources required for developing / debugging features / components Perform and evaluate test in the customer or target environment Team Player Good written and verbal communication abilities Proactively ask for help and offer help

Knowledge Examples:

     Appropriate software programs / modules      Technical designing      Programming languages      DBMS      Operating Systems and software platforms      Integrated development environment (IDE)      Agile methods Knowledge of customer domain and sub domain where problem is solved

Additional Comments:

Looking for an Android Developer with 6+ years of experience and with below requirements: - Programming Languages: Java: Traditional language for Android development. Kotlin: Modern language endorsed by Google for Android development. Android Development Frameworks and Tools: Android Studio: The official IDE for Android development. Android SDK: Software Development Kit used to build Android apps. Gradle: Build automation tool used for building and managing dependencies. UI/UX Design: XML: For designing layouts and interfaces. Material Design Principles: For creating user-friendly and visually appealing apps. API Integration: RESTful APIs: For interacting with web services and backend systems. JSON/XML: For data interchange. Version Control: Git: For version control and collaboration. Databases: SQLite: Local database storage. Room Persistence Library: For database access and management. Debugging and Testing: Unit Testing: Using frameworks like JUnit or Espresso. Debugging Tools: Using Android Studio debugger. Understanding of Android Architecture Components: LiveData, ViewModel, Data Binding, Navigation Component Knowledge of Android Libraries: Retrofit: For network requests. Glide/Picasso: For image loading and caching. Dagger/Hilt: For dependency injection. Knowledge of Modern Android Practices: MVVM (Model-View-ViewModel) Architecture Coroutines: For asynchronous programming in Kotlin. Performance Optimization: Memory Management: Efficiently managing app resources. App Performance Tuning: Identifying and resolving performance bottlenecks.

Confirm your E-mail: Send Email