Senior Software Engineer

  • Full Time Job
  • Remote
Starboard Maritime Intelligence

Starboard is web-based geospatial software that provides teams with a real-time view of global maritime activity and powerful tools for analysis and collaboration. Starboard helps nations tackle complex maritime challenges, ranging from risk-assessing arriving vessels to detecting illegal fishing and helping prevent biosecurity outbreaks.

We are a remote organisation with team members dispersed throughout Aotearoa New Zealand, Australia and North America. We are collaborative and supportive by nature and necessity—software and science are both difficult. Combining the two successfully requires teamwork, empathy and a willingness to listen and understand other people’s point of view.

We believe that to build a great company and tackle complex problems, we need a broad range of skills, perspectives and backgrounds. We invest in our team and support one another.

Who we’re looking for

Primarily, we want someone who produces great work and gets the job done. If you think you’d be a great fit for the role but don’t have the exact experience set out below, please still get in touch and apply — we’d love to hear from you!

To enjoy and excel in this role we’re looking for:

  • Extensive knowledge of server-side coding and databases — we use Go, Postgres and some Python running on Linux.
  • Extensive experience developing software and operations in a cloud-based environment;
  • Extensive knowledge of GraphQL and/or REST APIs;
  • Extensive experience in software testing — unit & integration testing;
  • Demonstrated ability to communicate complex ideas both verbally and by other means (presentations, proposals, bug reports, forum discussions, etc); and
  • Comfortable in a Linux command line environment (ssh, bash, git etc);

It would be advantageous, if you also had experience in some of these areas:

  • Shipping products that meet the needs of end-users;
  • Geospatial data and GIS applications;
  • Security compliance, such as the New Zealand Information Security Manual (NZISM).
  • Setting up and operating cloud-based scalable architecture with Kubernetes-like systems;
  • Site reliability engineering — measurement, handling failures and automating operations;
  • Working with large (TBs) datasets;
  • Knowledge and experience in frontend frameworks and their toolchains — we use JavaScript, React, Redux & Leaflet;
How we build software

We work backwards from the customer problem to the technology. Our roadmap comes from team ideas, user research, market research, and work required to make our software reliable, fast, and scale with user growth. It contains a mixture of large unique and valuable features, and tiny improvements. We believe great software is made of a thousand, small good experiences.

We deliver software with highly collaborative cross-functional product teams. These teams include front and backend engineers, data scientists and product designers. Our mature engineering practices enable constant iteration within the app, and we typically push to production multiple times a day.

Engineers work closely with each other and their product team, working through ideas and solutions over calls and occasionally in person (when a good whiteboard session is required).

As a company and product team we set and measure annual and quarterly goals. We don’t break down tasks into small units, we don’t plan two week sprints, and we don’t measure velocity. We give our teams and team members space and autonomy to come up with efficient ways to solve problems and deliver great software.

What you’ll be doing

As a team, we share responsibility for the whole product lifecycle: design, implementation, testing/review, deployment and operations. When needed, we work on tasks outside of our specialist areas, and you need to be willing to contribute as required.

You’ll be working within our small and dedicated product team — moving fast and working independently. To do well in this role, you need to excel in a remote working environment while demonstrating a high level of integrity.

While Starboard is a remote company, we get together in person as a whole team twice a year and in smaller groups to work through projects when necessary.

You will:

  • Develop readable, reliable, performant code;
  • Collaborate on multiple projects with other members of the product team;
  • Perform code reviews and quality assurance testing;
  • Creating prototypes to rapidly test ideas and techniques;
  • Participate in an operations duty rotation, responding to user support requests and critical systems issues;
  • Stay abreast of technology developments and actively teach and learn from colleagues; and
  • Influence Starboard’s future direction by contributing ideas, providing feedback, and evaluating feasibility;
Starboard Maritime Intelligence