IOS Developer

iOS Developer required by Whitehall Resources on a 6 month initial contract based in West Sussex

Tasks:
– Carrying out development activities
– Testing of products
– Assisting the Team Leader in examining packages of work and giving realistic timescales for completion
– Carrying out Operational activities
– Completion of work allocated within agreed time, cost and quality criteria and providing progress reports on assigned work as required
– Prompt escalation of problems, issues and risks as necessary
– Management and control of problems and change within their area of responsibility.

Technologies:
– Minimum 3+ Years experience developing native applications for iOS in Swift or Obj-C
– Version Control using GIT
– A test-first development mentality using TDD and XCTest
– Able to provide examples of clean, self documenting, readable code.
– Demonstrable understanding of S.O.L.I.D. principles and Object Oriented patterns.
– Integrating third party open source software using CocoaPods, Carthage or other.
– Continuous Delivery with FastLane or TestFlight together with CI systems e.g. TeamCity or Xcode Server.
– Experience of Agile software delivery methodology
– Excellent communication and mentoring skills, good verbal and written communication
– Digital technologies e.g. Scala, Play Framework, mongoDB, Java, JSON, XML, Microservices, Docker, Puppet, IntelliJ, IDE, Sbt, CSS

Examples: Java Development, Weblogic, Webmethods, Java Scripting, J2SE, J2EE, Spring, EJB, HTML, HTML5, Unix, Eclipse, SOAP, XML, REST, JBOSS, Apache, Tomact, SQL, Hibernate, JUnit, Selenium (Automation), GiT
– Open Source technology
– Digital technologies
– Adobe Forms Development

Technical Skills:
– Understanding of common web application architectures
– Experience configuring and managing Linux servers for serving a dynamic website
– Experience debugging a complex multi-server service? Scripting or basic programming skills? Familiarity with network protocols – TCP/IP, HTTP, SSL, etc
– Installation and management of open source monitoring tools
– Configuration management tools like Puppet, Chef
– Deploying and configuring machines in a Cloud environment
– Understanding of application deployment strategies and continuous integration
– Working within a product-centric environment
– Experience of DevOps culture and working practices
– Experience with, and appreciation of, Agile/Lean development methods, practices and techniques
– Solid development experience preferably in Open Source language e.g. Java/C#/Haskell
– Experience with continuous integration tool, such as Jenkins
– Experience administering web servers, application servers, and servlet containers, such as Nginx, Tomcat, NodeJs etc
– Experience testing and automated testing tools, such as Selenium, Gatling, Cucumber, Gherkin
– Expert knowledge of Windows and Linux (Ubuntu) technologies and administration
– Familiar with common diagnostic methodologies, and the deployment and use of monitoring tools incl. Grafana, Kibana, Dashing, Google Analytics
– Knowledge and familiarity of relevant scripting languages, such as Python, JavaScript, Perl, Ant, Groovy, Ruby etc
– Familiarity with NoSQL database design and administration such as Mongo
– UbuntuIDE: IntelliJ, Sublime TextJS Libraries: AngularJs, jQuery, Grid Layout, Gulp, Grunt, Karma, GIT / GitHub
– Awareness of Open Source & Digital technologies

The following are not required but an advantage:
– 2+ Years experience of development with Swift.
– Knowledge of Clean Architecture patterns such as MVVM or VIPER (above and beyond MVC).
– Experience of GCD and asynchronous multicore programming an advantage.
– Framework development and distribution via CocoaPods, Carthage or SwiftPackage Manager


All of our opportunities require that applicants are eligible to work in the specified country/location, unless otherwise stated in the job description.