|Title:||Android - Senior Software Developer|
|Division:||Arthrex, Inc. (US01)|
|Location:||INC- Naples, FL (US08)|
Main Objective: Develop, support and maintain rich, interactive and high performance software applications by writing robust code and collaborating in a team environment.
- Essential Duties and Responsibilities:
- Takes an active part in software application development. Leads this development within the team, and makes specific architectural and code recommendations to the team.
- Maintains and enhances existing applications. The ability to diagnose and solve issues is critical.
- Comfortable and/or willing to learn all aspects of the technology stack from client side programming to configuring the various servers that run the applications.
- Monitors applications for any abnormalities and looks for areas to improve availability and speed of the applications.
- Mentors and trains junior developers and conducts code reviews.
- Assesses new technologies, languages and software. Presents findings to both the team and business and makes recommendations on their application.
- Conducts application related training.
- Works effectively with the UX, QA and product management teams during all stages of application development conceptualize, design, build, test, and release.
- Occasional travel for training, meetings or trade shows may be required.
Education and Experience:
- High school diploma or equivalent required.
- Bachelors degree in Computer Science or related field preferred.
- 5+ years of hands-on experience developing mobile applications that are used in a production environment.
- Experience writing robust, pragmatic code following design patterns/anti-patterns.
- Advanced experience with the development and support of mobile applications using programming/scripting languages such as Objective-C, Swift or Java.
- Experience creating and/or consuming REST web services.
- Advanced experience with distributed version control systems such as Git or Mercurial
- Experience with Agile development methodologies, preferably Scrum.
Knowledge and Skill Requirements/Specialized Courses and/or Training:
- Strong iOS, Objective-C, and UIKit development skills are a plus.
- Android, Java development skills are a plus
- Advanced understanding of good relational database design. Experience with NoSQL data stores is a plus. Must be able to write SQL queries, and understand database concepts such as stored procedures, views and triggers.
- Knowledge of security and identity management solutions such as OAuth, certificates and encryption.
- Experience with performance tuning tools (e.g. Instruments for iOS, Chrome Web Tools, etcetera).
- Ability to work effectively with little supervision and strong attention to detail in a team environment.
- Requires the ability to work on multiple projects at the same time.
- Individual must be highly motivated and self-directed.
- Excellent written and verbal communication skills.
- Familiarity with continuous integration.
Machine, Tools, and/or Equipment Skills:
- Experience working with code editors, team collaboration software. Individual must feel comfortable using the command line. Experience with Mac OS X is a plus.
All qualified applicants will receive consideration for employment without regard to race, color, religion, age, sex, sexual orientation, gender identity, national origin, disability or protected veteran status.