Sr. Mobile Device Software Developer
Website Application Development
Reference Code: 5943
Title: Sr. Mobile Device Software Developer
Location: Warren, Michigan 48093
Duration: 1 Year with possible extension
Our client is a Fortune 50 company and one of the world's largest Automotive manufacturing companies.
- Sr. Mobile Device Software Developer.
- In this software development role, you will be responsible for developing software applications using sound, repeatable, industry standard methodologies.
- You will have the opportunity to work hands-on writing software or solutions, based on detailed requirements and system specifications.
- Development activities will include updating existing software and/or developing new software solutions to address a specific need or solve a particular business problem.
- Additionally, you will drive development activities in accordance with appropriate methodologies and application of a repeatable, systematic, and quantifiable approach to the development process.
- You will coach/mentor software developers and will review the software being developed.
- This role will also work closely with architects and/or data scientists to ensure code alignment with design patterns/frameworks.
- For this role you will expected to have demonstrated success in software project delivery experience in leading technical efforts developing applications using a variety of tools, languages, frameworks and technologies
- Demonstrate mastery of many programming languages, tools and/or technologies Performance tuning, usability assessment/improvement
- Aggressively engage in the identification / remediation of software issues related to code or solutions quality, security, and/or pattern/frameworks and software usability or end user related issues
- Integrate software with existing software/systems
- Automates unit/end-to-end testing of software systems within their domain, focused on software quality and maintainability
- Strong Knowledge of maintaining and debugging live software systems. Dedicatedly engage in the remediation of software issues related to code/solutions quality and/or security
- Provides guidance and mentoring of fellow software developers and other team members
Possess technical writing knowledge around system design specification and user documentation of software systems and ensure that technical documentation meets standards
- Understand and maintain compliance standards and industry standard methodology
- Holds themselves and others accountable for demonstrating values and cultural behaviours.
- Models behaviour’s and builds a winning culture.
- The position is responsible for developing and testing mobile applications using repeatable industry best practices and in accordance with software development project methodology.
- The Software Developer will work hands-on designing and writing code based on detailed requirements and system specifications.
- Developers will specialize in mobile development software packaging and coding languages.
- Development activities will include updating existing software and/or developing new mobile applications to address a specific customer need or to solve a particular business problem.
- This role will contribute to all development activities including design, coding, testing, certification, documentation and deployment.
- The Software Developer for Mobility should have a strong eye for Usability especially within Mobile Form Factors.
- This role will involve a great deal of creativity and initiative.
Major Duties and Responsibilities:
- Defines, designs, builds, tests, deploys, and supports software systems.
- Leads and develops technical and business systems related activities of major significance to the Customer.
- Coaches and counsels project managers and Customers on technical solutions. Responsible for assisting in the business proposal process.
- Develops principles and concepts and innovative solutions for the Customer enterprise.
- Develops/maintains depth and breadth across lines of business.
- Regularly interacts with senior management/major Customers.
- Interactions normally involve complex situations and/or influencing and persuading other strategic level managers.
- Provides application programming/systems development and support for complex systems.
- Sets technical direction for the project/application.
- Provides program/project leadership for Customer solutions.
- Engages in business development. Develops communication plans for projects based on a system view.
- Teams with Customers to assess concerns/requirements and develops specific strategies.
- Integrates interrelated projects and manages projects Leads technical planning process.
- Defines consistent project management standards and procedures across the organization.
- Employs consistent measurement techniques.
- Informs Customers about emerging technologies and business implications based on the project and their overall business.
- Develops intermediate and detailed schedules that support the high-level master schedule and understands the interrelationships among the various levels of schedules.
- Develops alternative proposed project plans to support new business opportunities.
- Develops project management deliverables required to support a request for proposal or quotation.
- Evaluates Customer business, technical architecture processes, and objectives using the business enterprise models.
- Leads in the application of the organizational change management process to facilitate a smooth Customer implementation.
Specific Responsibilities of this Position:
- Full lifecycle application development using standard frameworks and coding standards/patterns
- Coding, unit testing and debugging applications in various software languages
Software testing and quality assurance
- Performance tuning, improvement, balancing, usability, automation
- Document software code and ensure that technical documentation i.e. configuration guides, install guides meet requirements
- Integrate software with existing systems
- Maintain standards compliance
- Implement localization or globalization of software
- Work closely with senior developers and software engineers to gain additional knowledge and expertise.
- Proactively engage in the remediation of software issues such as code quality, pattern mismatch, and security issues related to the code/configuration
- Automates testing processes by developing unit test scripts, as needed
- Proficiently build and maintain Android applications that contribute to the connected car feature roadmap
- Generate automated test cases based on feature development within applications
- Elaborate, estimate, and design for small increments of work based on sprint planning
- Perform and participate in root cause analysis of coding defects
- Commit to completing well-defined work and deliver on those commitments
- Swarm around tasks along with other Scrum team members
- Pair program with different people in many situations as dictated by sprint planning strategies
- Report status of assigned software development and/or maintenance tasks
- Consistently follow the specified software development methodology
- Model courageous and continuous learning to the team.
- Actively help team members continuously learn and build expertise.
- Promote improvements in programming practices such as acceptance test driven development, continuous integration, and test automation
- Continuously learn and challenge the organization concerning new practices, processes, technologies, and languages
- Contribute to a strong team using their collaboration skills.
- Perform manual unit and regression test cases as situationally required to support swarming on open tasks within a sprint
- Prospective candidates possess a high degree of creativity, problem-solving skills, a drive for results, the ability to prioritize and break-down complex tasks, the ability to develop peer relationships, and a strong technical learning capability.
Skills and Abilities:
- Proven experience developing software in one or more of the following domains:
Mobile for Android and iOS (iPhone and iPad) platforms or other mobile device platforms.
- Provides leadership and guidance to others when working with the Customer.
- Understands the Customer’s industry and is familiar with related industries.
- Handles diverse, complex assignments concurrently.
- Reviews project plans prepared by others in the organization.
- Applies broad-based knowledge and experience to identify, evaluate and recommend new processes and tools.
- Recommends appropriate technology for project tool selection.
- Experience 3 years +
- BS in Computer Science or similar field of study along with applicable work experience
- Experience with Android UI design (including custom views)
- Experience writing Android clients for Web Services (REST, RPC, and/or SOAP)
- Experience with Android Activities and Fragments
- Experience with multi-threaded development on Android platforms
- Firm understanding of Intents, Content Providers, Services, Broadcast Receivers, Handlers and AIDL.
- Proven experience with object-oriented design and design patterns
- Experience using source code control systems such as Git and pull request processes
- Knowledge of and desire to work in an Agile development environment
- Excellent verbal and written communication skills required
- Creative problem-solving skills and ability to effectively communicate and translate feedback, needs and solutions
- Must have strong teamwork orientation and the ability to foster collaboration within and across teams
- Must have the desire to be a people leader
- Needs good work ethic and strong sense of ownership of end result
- Minimum 7 years of professional software development experience
- Minimum 3 years of experience developing mobile applications within the Android OS for devices or tablets.
- Excellent technical knowledge of Java for Android
- Demonstrates strong experience/knowledge of the Android SDK
- Good understanding of software development best practices
- Experience working in an agile environment
- Extensive UI Design experience
- Strong knowledge and understanding of different Android platforms
- Experience with native Android UI development for embedded (vehicle) systems
- Experience with Kotlin, Java and RX Java methods
- Thorough knowledge of evolving Android platforms (Android R, Android S, etc.)
- Experience with Agile development methodologies including XP practices, test-driven development and pair programming
- Awareness of the Android UI/UX guidelines
- Experience with mapping and search providers
- Experience with other Google APIs (licensing, in-app billing, etc)
- Experience leveraging Android Widgets
- Experience with Internationalization and Localization
- Experience with Alexa and Google assistant Skill/Action development
- Experience in Android Jetpack components such as MVVM, Navigation Controller, Data Binding, Dynamic Feature Modules.
- Hands-on using Kotlin, Retrofit, Dagger, Firebase.
- Experience with new libraries and technologies like Reactive programming (RxJava) and
- Espresso for UI testing.
- Experience in integrating multiple APIs such as GSON, EventBus and Crashlytics.
- Hands-on in developing Native Applications which support multi size device densities.
- Experience with Android components such as Activity, Intent, Service, Broadcast Receivers,
- Content Provider, AIDL, permissions, Application Privilege, Authentication.
- Experience in performance optimization of Android applications and exposure to tools such as Trace View, Lint, LeakCanary and Hierarchy Viewer.
- Experience in multi support UI development and Application Frameworks such as Activity
- Manager, Fragments, Notification Manager, Location Manager, Telephony Manager, Content Providers etc.
- Hands on experience in Android enterprise application development using IDE like Eclipse,
- Android Studio, Android SDK and ADT development tools in JAVA/Kotlin environment.
- Skilled in using XML and JSON parsers to make HTTP operations from/to feeds.
- Expertise in designing backend databases for data storage and retrieval using SQLite, SQL
- Server and SQL for large scale mobile and java applications.
- Hands on experience in Integration of android applications with SOAP and RESTful web service APIs.
- Experience in Debugging with ADB, Exception handling and memory/battery optimization.
- Experience using version control software such as, GitHub, Gerrit, Bitbucket for effective code maintenance, tracking and logging.
- Experience in all the phases of the Software development life cycle (SDLC) process and exposed to methodologies like Agile and Scrum.
Preferred Work Schedule:
- Weekdays 8 am to 4 pm.
For more information or to submit your application, click on the 'Apply for Job' link below.
bluestone Staffing recruit’s top talent for some of the most desired companies on a contract, contract-to-hire and direct hire basis. We take pride in presenting our candidates with great opportunities they may not have exposure to elsewhere. By working with bluestone, you'll have access to rewarding job opportunities, competitive compensation, and industry leading benefits packages. We look forward to helping you land your next career opportunity and achieving your goals!