Description

As a Mobile application developer, you will be responsible for the implementation and support of new and existing mobile applications for both internal and external customers.  You will be working in an agile team, designing and developing software and tests.

Responsibilities

• Developing high quality software as well as unit and component tests within a continuous integration environment 

• Developing scripts to automate and streamline development activities 

• Co-ordinating with the Product Owner, team members and other stakeholders to meet business objectives 

• Participating in project planning sessions and providing estimates 

• Understanding the product and domain enabling you to write technical specifications 

• Configuring and maintaining release and deployment environments 

• Participating in manual end to end system QA testing 

• Investigating new technologies and continually improving and updating your technical knowledge and skills 


Required Criteria

• Minimum 2:1 degree in Software Engineering / Computer Science or equivalent 

• Competent in mobile application development with a focus on Android and/or Apple development and a willingness to broaden their horizons to both platforms. 

• Competent in object oriented design using Java and/or Swift 

• Experience designing and avoiding the pitfalls of native and/or hybrid mobile applications. 

• Experience with threading and asynchronous code. 

• Experience with JUnit and associated libraries (mocking frameworks, etc.) 

• Experience with one or more scripting language e.g. Python, Perl, Ruby 

• Knowledge of source code revision control, preferably GIT 

• Fluent in English, both written and verbal 


Desired Criteria

• Java (1.6+) 

• JavaScript 

• HTML 5, CSS3 

• Bootstrap, AngularJS 

• Apache, Tomcat, node.js, Nginx 

• MySQL, PostgreSQL, HSQLDB 

• J2EE (Servlets, JSP, JSF, JSTL) 

• Struts2, Spring, Hibernate ORM frameworks 

• MVC design pattern 

• IDEs: Eclipse, Android Studio, xCode 

• Development experience on Ubuntu and Red Hat Linux. 

• Knowledge of messaging systems e.g. REST, message queues, RabbitMQ 

• Experience working in an Agile environment with continuous integration and deployment. 

• Practical experience managing and administrating MySQL databases. 

• Experience with Spring MVC, Struts 2 and Hibernate Frameworks 

• Good knowledge of relational databases e.g. MySQL, SQLite  

• Experience of web technologies including HTML, CSS, and JavaScript 

• Working knowledge of web servers, web application servers and deployment on Linux-based platforms. 

• Experience with Cross Platform development technologies: Ionic, Xamarin 


Personal Attributes

• To be a good Team Player, capable of delivering excellent results under pressure and to strict deadlines  

• The ability to Communicate effectively with clients and colleagues.  

• A Quality focus with an understanding of advances in computer technology and how this affects the business environment  

• To be Adaptable and able to pick up new techniques  

• A positive "can do" enthusiastic attitude towards addressing the technical challenges facing Camlin Technologies and our clients  

• To be a Conscientious individual who demonstrates attention to detail along with high levels of ownership and commitment  

• The Motivation to create high quality products and systems and learn new skills. 


Statement on Fair Employment and Equal Opportunities 

Camlin Group wishes to ensure equal opportunity is given to all job applicants. This company will not discriminate on the grounds of gender, sexual orientation, race, religious belief, political opinion, marital status, age or disability.