Mobile Application Developer - Android
Under the general direction of and reporting to the Manager of Software for New Product Development, the primary responsibility is for delivering all aspects of the software development lifecycle to include analysis, designing, coding, testing, troubleshooting and supporting mobile software to meet or exceed specified standards and end-user requirements.
Duties and Responsibilities:
* Works collaboratively with development team and QA team members to iteratively construct software solutions using agile methodology.
* Devises or modifies procedures to solve complex problems considering mobile device capacity and limitations, operating time and form of desired results, and expected to analyze and resolve mobile application performance problems.
* Responsible for mobile application design, coding, testing, debugging and documentation.
* Recognized for a high level of technical expertise in mobile application development.
* Develop software that communicates with back-end server / cloud services
* Support and improve mobile applications and show a high level of ownership.
* Participate in daily team standups, review, planning and retrospective meetings.
* Collaborate with other members of IT on the best practices around software development.
* Held responsible for completion of one or more phases of internal team projects.
* Regularly provides guidance to less-experienced mobile programmers.
* Requires a thorough understanding of a number of disciplines including but not limited to databases, networking, programming, deployment of mobile applications.
* Works with graphic designers and other members of internal project team and external contractors to develop mobile programs, designs and make architecture recommendations, and provide guidance and expertise on how best to design the product solution to work with mobile devices.
* Acts independently under general direction of the Software Programming Lead
* Provides technical leadership on complex projects.
* May act as expert in business or functional area.
* Formulates and defines system scope and objectives.
* Has full technical knowledge of all phases of applications systems analysis and programming.
* Responsible for assuring other programming personnel on team follow and adhere to standardized quality assurance guidelines among mobile software product.
* Evaluates and researches latest mobile technologies for the ongoing success of Milwaukee Tool.
* Mentors other programming personnel on the team.
* Responsible for maintaining and reporting on status of assigned tasks.
Education and Experience Requirements:
* Requires a Bachelor's Degree in Computer Science, Business Administration, Management Information Systems (or related field), and 5+ years of related experience, with Java preferred
* 3+ required years of Android mobile application development experience in a professional environment (on multiple Android devices and OS versions)
* Minimum of one published app in Play Store
* Must demonstrate success creating Android applications for phone and tablets
* Must have experience in an object-oriented design methodology environment and IDE (e.g. Eclipse or Android Studio)
* Must have experience developing the Android activity lifecycle
* Must have strong experience with Java
* Must have experience working with agile methodology such as Scrum or Kanban
* Must have experience with databases (e.g. SQLite)
* Must have experience with REST APIs and HTTP services
* Must have experience with XML & JSON
* Experience working with Android's Bluetooth stack and similar hardware APIs a plus
* Experience with Android Material Design Framework a plus
* Requires strong written, verbal, analytical and interpersonal skills #LI-MB1