Senior to Mid-Level Software Development Engineer

Chantilly, Virginia
ARIN offers competitive salaries, comprehensive benefits, training, education, and generous 401K.
May 10, 2019
Jun 14, 2019
Nonprofit, Other
Full Time

Software Development Engineer

ARIN is a non-profit, member-based organization that administers IP addresses and ASNs in support of the operation and growth of the Internet. We are currently looking for a senior to mid-level Software Development Engineer to join our engineering team. If you are interested in participating in the full life cycle of software development while supporting the functionality and mission of an organization that helps the Internet grow, we want to talk to you! 

This position will primarily focus on research, design, development, testing, debugging, maintenance, and documentation of ARIN’s internal as well as customer-facing systems and services. 

Job Description and Responsibilities 

Design: Help us research, design, and develop software systems to meet our users’ needs for easy management of their data.

We create our software using these languages:

  • Kotlin
  • Java
  • Javascript
  • C
  • Ruby

Our web-based systems use modern web technologies such as:

  • HTML
  • CSS
  • Javascript
  • Angular
  • React
  • Bootstrap
  • Web Assembly

Our application provides an API for external, third-party systems and software, which you’ll help develop.

Test: To provide the best user experience, we extensively test and debug our software. As a developer, you’ll also support Quality Assurance (QA) efforts.

Manage: We are dedicated to solid configuration management.

You’ll be using these tools in a Linux environment:

  • Git 
  • Ansible
  • Docker
  • Kubernetes

You’ll also help provide packaged releases for all application releases and bug fixes.

We manage lots of information, and you’ll be working with ARIN databases in PostreSQL and MariaDB. Some of the things we do include modifying data, performing statistical analysis, and ensuring database integrity. You will also help develop proposed relational database schemas to support application development.

Collaborate: You’ll participate in a scrum-based Agile software development process and present results of individual and team work to supervisors and product owners on a regular basis.

This will include:

  • Participating in the requirements-gathering process.
  • Producing, contributing to, and/or reviewing project specifications, design documents, flowcharts, and diagrams.
  • Analyzing software requirements to determine feasibility of design within time and cost constraints.
  • Consulting with customers concerning requirements, enhancements, and operation of systems.
  • Consulting with system operations and other engineering staff to evaluate interface between hardware and software, and operational and performance requirements of overall system.
  • Participating in code reviews of own and others’ software.

Innovate: You’ll research, recommend, and make changes to improve systems and/or database performance.

And of course, there will be other related duties as required and assigned.

To be considered for this position, you must have:

  • A 4-year college degree, preferably in an information systems or computer science-related discipline OR equivalent work experience.
  • Seven or more years job-related experience, including functional programming techniques, object-oriented techniques, structured analysis and design, and application troubleshooting and support.
  • Knowledge of Java, C, and Javascript in a Linux environment and knowledge of Java application containers such as Jboss/Wildfly.
  • Experience with client/server network programming (TCP/IP and UDP).
  • Demonstrated proficiency in dealing with such issues as multithreading, non-blocking, and asynchronous I/O.
  • Experience and knowledge of REST based systems.
  • Experience and knowledge of systems configuration management such as Ansible or Puppet and container orchestration technologies such as Docker and Kubernetes.
  • Knowledge of relational databases and SQL, preferably MariaDB and PostgreSQL
  • The ability to understand complex instructions and work independently.
  • Strong interpersonal, verbal, presentation, and written skills.
  • Excellent problem-solving skills.

And it would be awesome if you had:

  • Familiarity with IPv4, IPv6, PKI, RPKI, Whois, RDAP, RPSL, DNS, routing and networking issues, and protocols.
  • Experience with and knowledge of Kotlin, Gradle, Angular, and/or React.

About ARIN

The American Registry for Internet Numbers, Ltd. (ARIN) is a nonprofit, member-based association that administers IP addresses and ASNs (collectively referred to as Internet number resources) in support of the operation and growth of the Internet. Additionally, ARIN coordinates the development of policies by the community for the management of Internet number resources and advances the Internet through informational outreach. ARIN is a well-respected leader in the Internet community and likewise a thought leader in Internet governance discussion. Learn more at

ARIN offers competitive salaries and comprehensive benefits, including but not limited to:

  • Group health and dental insurance – ARIN pays over 90% of the premium costs
  • Group vision care – no employee deduction for employees and any dependents
  • Flexible Spending Account and Dependent Care Account
  • 401(k) retirement plan - up to 9% matching after first year of service, and all contributions are 100% vested. In addition, in 2012-2018, ARIN made an additional discretionary 401(k) contribution.
  • Education/Tuition Reimbursement - up to $5,000 per year
  • Training
  • Casual work environment with snacks, drinks, and coffee
  • Regularly-scheduled team outings and staff lunches

Ten paid holidays, one floating holiday, and a generous comprehensive leave program starting at 4 weeks (20 days)

Learn more about working at ARIN and see all current openings at