Lead/Principal Engineer – Android
Description
We are looking for talented engineers who are passionate about using software engineering to make kids love to learn and redefine learning@home at BYJU’S. You will have an opportunity to work in a highly motivated fast-paced environment in a fastest-growing Ed-Tech company. You will be building platforms and services to be used across various products. You will have the opportunity to create a significant impact on our systems, our business and most importantly on the life of millions of our students as we take on challenges that will reshape the education industry. You will operate at the intersection of diverse disciplines - Backend, Frontend, Big Data, ML, Computer vision and Multiple programming languages. You will build solutions for Byju’s core learning Apps, co-branded platforms, new launches, product development & innovations and personalized learning experiences.
We are looking for smart people with excellent technical skills and a can-do attitude. Candidates should be eager to learn, flexible to pivot when needed, savvy enough to thrive in a dynamic environment and should possess a growth mindset.
Roles & Responsibilities
- Leads more than one projects end-to-end and collaborates across functions. Drives planning, estimation and execution.
- Manages stakeholder expectations and offers scalable, reliable, performant and easy to maintain solutions.
- Consistently takes well thought technical/design decisions.
- Develops expertise in more than one area and shares knowledge with others. Able to mentor/train people in areas which are new to them.
- Drives people to solve engineering challenges.
- Enjoys high respect of Tech and other cross functional teams.
- Demonstrates effective communication with project team, management and internal/external clients as necessary.
- Surfaces both technical and non-technical team challenges and helps resolve them.
- Champion for SDLC best practices and high-quality standards.
- Significantly contributes in hiring high performance candidates.
Ideal Candidate Profile
- Expert in JAVA, Kotlin, Reactive programming, Asynchronous programming and Dependency Injection. Experience with unit-tests and automation frameworks.
- Familiarity with any architectures like MV*(MVP/MVVM/MVI).
- Strong focus on high-quality mobile UI experiences.
- Operates independently with almost no oversight.
- Is able to apply domain expertise to think critically and make wise decisions for the team, taking into account tradeoffs and constraints.
- Communicates tech decisions through design docs and tech talks.
- Has delivered multiple projects with end-to-end engineering ownership.
- Keeps track of new technology/tools and embraces them as necessary
- 7+ years of experience in a product-driven organization.
Technologies we're working with
- MVP, JAVA and Kotlin, Realm, Firebase Real-time Database, RxJava,Kotlin Coroutines, Dagger and Retrofit.
Note- WFH currently
About BYJU’S - The Learning App
Similar jobs
The ideal candidate will be responsible for developing high-quality applications. They will also be responsible for designing and implementing testable and scalable code.
Responsibilities
Develop quality mobile and web applications
Design highly scalable, testable code
Discover and fix programming bugs
Qualifications
Bachelor's degree or equivalent experience in Computer Science or related field
Development experience with programming languages
Hands on knowledge of dart would be great
Hands on knowledge of flutter would be great
Experience with the BLOC design pattern would be a big plus
Working knowledge of API integration
Experience with Flutter 2.0 for building both web and mobile applications would be a big plus
Good communication skills to operate in today's remote work environment
You can contact me - nine three one six one two zero one three two
Role: Senior Android & Flutter Developer.
Preferable immediate joiners.
Roles and Responsibilities:
- Minimum 2+ years of hands-on experience in Android & Flutter development.
- Strong in Java Programming and OOPS Concepts.
- Knowledge of problem-solving, multi-threading and complexity analysis.
- Experience with design patterns like MVVM, Provider etc.
- Experience in Android application development experience using Java, Kotlin & Flutter.
- Design and develop Mobile applications using Flutter.
- Must be able to deploy app in Play store & App store.
- Expert in Android User Interface Development and Understanding of best practices for the same.
- Independently drive the development of Android-based applications.
- Ability to work with web services on the Android platform (consuming REST/SOAP APIs) and related underlying technologies (JSON, XML).
- Self-driven and able to work with minimal direction.
Desired Candidate Profile:
- Problem-solving expertise in critical steps.
- Hands-on experience with Android studio & Gradle build system.
- Knowledge of Linux, Git, Relational Databases, XML and JSON is a must.
- Hands-on practice with CI/CD tools
- Memory optimization and Debugging skills.
Responsibilities
- Collaborate with the core team building a state-of-the-art blockchain based SaaS platform.
- Building mobile applications using latest technologies leveraging Android, node and mongo.
- Apply comprehensive knowledge and a thorough understanding of concepts, principles, and technical capabilities to perform varied tasks and projects.
- Backend RESTful API Design and server-side development for web and mobile apps.
- Develop and design database schemas on MongoDB.
- Perform code reviews and unit tests to ensure code consistency and maintainability.
Minimum Qualifications & Qualities
- Passion to solve complex problems of agriculture in a dynamic start-up environment
- Flexible, curious, exploratory, and can-do attitude
- Great sense of ownership and ability to work with very limited supervision
- Bachelor's degree in Computer Science, related technical field, or equivalent practical experience.
- 1+ year of hands-on coding expertise in software engineering.
- Experience with Android, Node.js, mongodb
- Ability to speak English fluently.
Preferred Qualifications
- Strong programming experience of 1+ years with Android, Node.js, Express.js, MongoDB.
- Strong problem solving/troubleshooting skills.
- Experience with SDLC in an Agile work environment using tools like Jira and GitHub.
- Knowledge and experience of NoSQL Databases is a must.
- Knowledge of AWS Services like ECS, EKS, EC2, S3, Lambda, Load Balancing, Route 53, API Gateway along with Infrastructure provisioning and optimization is an advantage.
- Experience with DevOps, CI/CD pipelines on Jenkins, GitHub Actions,
- Experience with containerization environments like Docker & Kubernetes is an advantage.
- Familiar with TDD, CI/CD, Infrastructure as Code
- Knowledge of any Blockchain protocols like Hyperledger is clearly an undue advantage
• Ability to use the Android Studio, including the Android SDK, with ease.
• Prior experience as an Android Developer will be advantageous.
• Excellent coding and proofreading skills.
• Ability to manage your workload with minimal supervision
• Proofreading your code and correcting mistakes before each app is released.
• Collaborating with UI and UX Designers, as well as Software Testers, to ensure that each app is presentable and in perfect working order
Our client's Mobile app has been downloaded by more than 15 million users. Daily, more
than a million users login to the application. As a fast growing company, we are
preparing for a future of tremendous growth and disruption in finance. We are looking
for a React Native developer (SDE2) interested in building performant mobile apps on
both the iOS and Android platforms. The incumbent will be responsible for architecting
and building the applications, as well as coordinating with the teams responsible for
other layers of the product infrastructure. Building a product is a highly collaborative
effort, and as such, a strong team player with a commitment to perfection is required.
● Leverage native APIs for deep integrations with both platforms.
● Diagnose and fix bugs and performance bottlenecks for performance that
feels native.
● Reach out to the open-source community to encourage and help implement
mission-critical software fixes — React Native moves fast and often breaks
things.
● Maintain code and write automated tests to ensure the product is of the
highest quality.
● Participating in SDLC processes streamlining, POC development, Functional
Estimation, Performance Tuning, Environments setup, etc.
● Adherence and promoting best development practices that ensure high
quality
● Ability mentor junior developers and actively contribute to code reviews and
improve the code base for scale and maintainability
● Hands-on experience in Android/iOS app development via React-Native
● Experience in Build systems and Deployment processes
● Experience in writing unit testing code with libraries like Jest, Enzyme , Jasmine, Mocha, etc.
● Excellent problem solving, debugging, and troubleshooting skills.
● An avid follower of the best practices, optimization strategies, and design patterns
● Knowledge of RN available inbuilt UI components and the props those UI components accept.
● Good knowledge of monitoring and tracking down app crashes and bugs using advanced tools
● Experience in profiling tools in Xcode and Android Studio
● Experience in 3rd party services integration
● Knowledge of architectures, trends and emerging technologies
Equity between 0.05% to 0.2% will be made available.
Skill Sets for Android:
-Solid understanding and hands on with full mobile application development life cycle
-1-2 years experience of design, coding, testing and debugging softwares
-1-2 years experience of Java, Kotlin technologies and native Android development
-Strong knowledge of Android SDK from Jellybean(API level 18) and above, FIREBASE AND DIFFERENT SCREEN SIZES, EXPERIENCE IN THE LATEST ANDROID VERSION (9.0) IS PREFERRED.
-Proficient understanding and hands on with Android UI design principles-patterns and best practices
-Good experience with libraries like volley, okHttp, glide, retrofit etc.
-Very good experience with JSON, GSON parsing
-Good experience with device database usage in application
-Moderate knowledge in debugging C code in command line using gdb, adb
-Extremely comfortable with RESTful APIs to communicate with server
-Strong knowledge of code versioning technologies and tools like Git
-Should have worked on 1-2 Android applications from scratch to Play Store
-KNOWLEDGE OF THE OPEN-SOURCE ANDROID ECOSYSTEM AND THE LIBRARIES AVAILABLE FOR COMMON TASKS
Added Advantage if:
Knowledge of Agile software development process
Understanding of Object Storage like Amazon S3
Wrote secure code for android applications
Knowledge of XMPP, Chat mechanism
Willing to learn new technologies
Responsibilities:
- Develop advanced and secure applications for Android phones and tablets
- Continuously discover, evaluate and implement new technologies, libraries for application to improve the functionality
- Keep eye on new technologies to maximize development efficiency
Unit-test based coding for modular coding, reusability; - Writing readable code; Maintain technical documentation
- Bug fixes and improving performance of existing applications
- Work on new ideas for products, it’s prototypes and estimates
- Collaborate on projects with a closely knit team
Requirements:
• Minimum 3 years of experience in React Native.
• Integration of Rest APIs in react native.
• Firm grasp of the JavaScript and Typescript language and its nuances, including ES6+ syntax
• Knowledge of functional and object-oriented programming
• Ability to write well-documented, clean JavaScript code
• Rock solid at working with third-party dependencies and debugging dependency conflicts
• Familiarity with native build tools, like XCode, Gradle, Android studio and IntelliJ
• Proficient understanding of releasing and monitoring apps on IOS App store, Play store.
• Should be able to communicate to backend developers on API building and modifications needed.
• Testing and releasing builds Experience in application testing software’s Appium is preferable.
• Understanding of REST APIs, the document request model, and offline storage
• Experience with automated testing suites, like Jest or Mocha
• Experience with handling production mobile apps.
• Experience with performance testing and optimization.
Responsibilities:
You’ll
• We are looking for a React Native developer interested in building performant mobile apps on both the iOS and Android platforms.
• You will be responsible for architecting and building these applications, as well as coordinating with the teams responsible for other layers of the product infrastructure.
• Building a product is a highly collaborative effort, and as such, a strong team player with a commitment to perfection is required.
• Build pixel-perfect, buttery-smooth UIs across both mobile platforms.
• Leverage native APIs for deep integrations with both platforms.
• Diagnose and fix bugs and performance bottlenecks for performance that feels native.
• Reach out to the open-source community to encourage and help implement mission-critical software fixes—React Native moves fast and often breaks things.
• Maintain code and write automated tests to ensure the product is of the highest quality.
• Transition existing React web apps to React Native.
Requirement: -
- Managing a team of 3-4 engineers
- Hands on experience in Web applications and Mobile applications.
- 2+ years of professional experience working with React Native.
- 4+ years of professional software development experience.
- Should have experience in React.js as well
- Experience working with Swift, Objective C, and Java a plus.
- Meaningful experience working on large, complex systems.
- Familiar with Agile development methodology
- Should have strong fundamentals in React Native
- Should be good at Languages React Native, iOS, Android mobile
- Should be well versed with mobile application architecture
- Ensure and apprise stakeholders of technical feasibility, effort, and impact of implementations.
- Interact with clients to understand requirements.
- Able to convert business requirements to sizable tasks for developers to implement.
Good to have skills:
|
Should have a positive approach with an urge to learn new skills. Should be innovative and ready to probe into new areas of business. Should be open to learn new technologies. Should be ready to work in a team |
Should have a minimum of 3-4 years of relevant work experience. |