Senior Application Developer

Job description

OpenVPN Inc is the Premier Open Source VPN technology in the world.


We are seeking a Senior Application Developer to build apps on Windows, OSX, iOS, Android and Linux, using Web based interfaces.


Join our team as we develop OpenVPN into a world-class VPN solution targeting multiple markets from consumer to small business to enterprise

Requirements

JOB QUALIFICATIONS

  • At least 5 years experience in programming languages including Javascript (Angular.js and React/React Native), Java, C, C++, Objective-C as well as HTML5/CSS
  • Webtool browser kits for various OS Environments (Webkit, V8, CEF)
  • OS Programming Environments: Linux, Windows, Mac, and Mobile (iOS, Android) app development environment
  • VPN and network security experience
  • Networking, routing, and security
  • Web Services (XML-RPC, REST)
  • App UI design skills, on both desktop and mobile
  • The ideal candidate will possess the skills to develop powerful yet intuitive user interfaces to complex back-end APIs. 
  • Knowledge of VPN, networking, security, and cloud technologies is highly desirable.

ADDITIONAL REQUIRED SKILLS

  • We need a developer who is able to work with a high degree of autonomy (i.e. able to work and be innovative given general goals, with minimal supervision needed). Documentation skills are required – all work has to be properly documented for the rest of the team.
  • The ability to design usable, attractive user interfaces is needed (most of the work is on our client-facing interfaces).
  • We need knowledge of browser and app interaction (specifically Single-Signon, Javascript-Java bridging, intents and mime-types, cookie injection and other techniques)
  • The developer has to be familiar with change management software such as SVN and Git and Jira for issue tracking and reporting.
  • Networking and low-level TCP/IP experience is a must, most of the work will have to do with VPN, routing, NAT traversal, IP filtering and firewalls, etc. OpenVPN and general security/encryption experience would be preferable.
  • Also, we need someone who is able to create and execute unit testing and initial QA on apps, including creation of test plans and setting up test environments for our QA engineers.