closed vacancySoftware Development Manager Routers - remote

Network Guard
Posted 4 years ago  • Hong Kong

About us

We envision a digital world that’s private and secure. Our industry-leading cybersecurity products empower millions of individuals to take control of their privacy and security online.

Our SaaS business is very successful. We’ve been at this for over a decade, and we’re still growing fast in a rapidly expanding industry. We have the resources to tackle large challenges for the long term and we’re always looking ahead.

Now we need you.

We’re a skilled team with 800 people all over the world. Our processes are efficient, we make decisions based on data, our culture is meritocratic, and we offer ample opportunity for career growth. We’re bright, diverse, and experienced, and we love challenges. Now we’re looking for talent across all functions to join us as we strive to become the very best in our industry.

Sounds like the place for you? Come be part of our mission.

Highlights

We plan to massively increase the number of customers using our router product and dramatically increase the feature set which the product offers. In order to achieve this we need you to both lead and significantly grow our Router Team to meet the businesses needs. 

Take the lead of the Router team

The Router Team is responsible for the entire router stack from firmware up to the UI layer. We:

  • Build customised firmware and ensure that it can be installed onto a wide range of OEM hardware.
  • Tune networking parameters and build tools to dynamically configure the network stack of the router to support customer features
  • Build middleware applications which provide services for user authentication, core features, our web frontend and more.
  • Build the frontend UI using web technologies such as Vue.js.
  • Configure and manage our build systems to securely build and package all components of the router.
  • Operate our test pipelines.
  • Build test-cases that test both functional and nonfunctional requirements, such as network speeds, ability to safely upgrade the firmware, detecting network traffic leaks..
  • Coordinate releases to customers, typically once every two weeks.
  • Are accountable for quality, velocity, and security.

Responsibilities

As leader of the leader of the team described above, you will:

  • Ensure your team has the capacity and skills to meet the needs of the Router Product Owner.
  • Ensure boundaries between components of the router tech stack are well delineated –avoid monolithic stacks which require broad skills sets for developers.
  • Ensure our custom firmware can be safely and securely installed onto a wide range of OEM routers.
  • Ensure your application can be shipped to customers at least every 2 weeks.
  • Ensure your code has excellent test coverage with a strong affinity for automated testing.
  • Ensure we never ship sev1/sev2 regressions, in particular regressions which lead to users bricking their routers.
  • Ensure your software meets a high security bar –never ship P1/P2 security bugs.
  • Ensure projects have well defined requirements, technical designs, threat models and test plans.
  • Define and measure metrics for the performance of your product, set SLAs and ensure you meet them: router bandwidth, network stability, ability to get and stay connected
  • Own your team’s SDL processes and ensure processes are simple and efficient
  • Hire for your team and ensure it has the skills and capacity to meet the business’s needs. 
  • Define roles and expectations, train your team and hold them accountable in meeting the highest standards.

Requirements

  • Experienced at setting goals, tracking progress towards goals and managing large projects
  • Expert in C and C++ development.
  • Experienced with testing frameworks such as CMocka, GTest/Gmock
  • Experienced at building user space applications in a *nix environment.
  • Experience with cross-compiling code, compiler toolchains and common tools in the GNU toolchain.
  • Intermediate experience in IP networking, including both low-level sockets programming and high-level application layer programming.
  • Excellent at writing test plans and writing automated tests.
  • Passion for writing well-architected, readable code and maintainable code
  • Great verbal and written communication skills
  • Strong sense of ownership, great problem solver, hunger for learning and positive disposition.
  • Good understanding of the threat modelling process and how to develop code without security vulnerabilities.

Optional

  • Proven track record as a people manager. You are experienced in holding your team accountable, leading skills development and career plans, providing continual feedback to your team members, motivating them and coaching them, defining hiring plans, leading interview loops and making hiring decisions.
  • Experience reverse engineering firmware and installing custom firmware onto 3rd party hardware.
  • Linux systems administration experience.
  • Experience building embedded systems.
  • DD-WRT or OpenWRT knowledge.
  • Experience modifying/writing drivers.
  • Experience in TDD or BDD.

What we offer

  • Challenging work in a fun and collaborative environment
  • Attractive compensation and time-off benefits
  • Spacious open-concept and centrally located offices
  • Full-time employment with flexible working hours
  • Fully stocked pantry with breakfast foods, fresh fruit and snacks
  • Team lunches and company events every quarter
  • Multicultural teams represented by 30+ nationalities