Android Engineer at CareerBuilder Premium Subscription
Sunnyvale, CA 94086
About the Job
Description:
Job Duties and Skills:
- Demonstrates up-to-date expertise and applies this to the development, execution, and improvement of action plans
- Executes Mobile Engineering projects
- Participates in the discovery phase of small to medium size Mobile Engineering projects
- Participates in peer code reviews and team development
- Provides and supports the implementation of business solutions
- Provides mobile engineering support to the business
- Troubleshoots business and production issues for mobile devices
*Minimum Education and Experience required:
- Bachelor's Degree in Computer Science or related field and 5 years of experience building scalable ecommerce applications or mobile software
Minimum Skills required:
- Experience with mobile software development using Kotlin.
- Experience using distributed source code version control systems (Git/Github)
- Experience with the agile methodology Scrum
- Experience with development of mobile network clients using HTTP protocol, REST APIs and Google Cloud Messaging
- Experience with Google Play APIs : Maps, Location, and Cloud Messaging
- Experience with software debugging techniques (debuggers, loggers, crash report tools)
- Experience with analysis of memory issues such as memory leaks using memory analyzers tools (DDMS, MAT)
- Experience with embedded real time systems with limited resources (memory and processing)
- Experience with Android software development
- Experience in design patterns, MVVM, data structures and algorithms.
- Experience in unit and integration testing Android code.
- Published Android application is required.
What project or initiative will they be working on?
- Project Glass
Top 3 Skills Needed or Required
- Android
- Kotlin
- Graphql
What are the day-to-day responsibilities?
As an Android Engineer, your day can be filled with a variety of tasks and interactions. Here is a general outline of what your day might look like:
1**Daily Standup Meeting**: Your day might start with a quick meeting with your team where everyone shares their progress, plans for the day, and any issues they are facing.
2. **Checking Emails and Updates**: After the meeting, you might check your emails to see if there are any new production tickets or updates from stakeholders.
3. **Working on Planned Tasks**: Most of your day will be spent on planned work, which could involve coding new features, debugging issues, or refactoring existing code to improve its performance or readability.
4. **Handling Production Tickets**: Throughout the day, there may be production issues that require your immediate attention. This could be anything from a minor bug that's bothering a user to a critical issue that's causing a major outage.
5. **Collaboration with Stakeholders**: As part of your job, you will regularly interact with stakeholders such as Product Managers and UX Designers. These interactions could involve discussing new features, reviewing designs, or addressing any concerns or feedback they have.
6. **Code Review**: You may also spend some time reviewing code submitted by your peers. This can help ensure the quality and consistency of the codebase.
7. **Learning and Development**: Finally, as technology is constantly evolving, you might spend some time learning about new tools, technologies, or best practices. This could involve reading articles, attending webinars, or practicing new skills.