x
Get our mobile app
Fast & easy access to Jobstore
Use App
Congratulations!
You just received a job recommendation!
check it out now
Browse Jobs
Companies
Campus Hiring
Download App
Jobs in Singapore   »   Jobs in Singapore   »   Information Technology Job   »   Principal Software Engineer
 banner picture 1  banner picture 2  banner picture 3

Principal Software Engineer

Network Guard Pte. Ltd.

We’re looking for engineers passionate about building cross-platform networking components. Ideally, you will bring us the latest evolutions in the domain in order to deliver industry-leading VPN performance and features. You'll be working on our servers and client apps, and will have access to commit to any repo across the company. We'll expect you to grow your skills in any direction that both fits your interests and the needs of the business, and over time you can rotate through various cross-functional teams.

Three best things about this role

  1. The people. We like to think that you'll find them open and friendly, skilled and motivated, and unified by our mission to protect the privacy and security of millions of customers worldwide.
  2. Impact. Deliver with both high pace and great quality. You don't need to convince people here to invest in good engineering practices.
  3. Skill growth. We cover a broad range of engineering specialties: many aspects of high-scale cloud applications, seven client-side operating systems, firmware, bare-metal servers for which we compile the OS (see TrustedServer), our own open-source VPN protocol Lightway, etc. No matter what your background, you're going to find someone from whom you can learn from here.

What you’ll be doing

  • Write high quality, well architected, modular code which is easy to read and maintain.
  • Ensure your code and the application as a whole have excellent automated test coverage.
  • Ensure the app has a clean, simple and robust architecture to enable various teams to easily contribute code for the long term.
  • Ensure the build and test pipelines are fast and stable.
  • Provide high quality code reviews for your team and other contributors to the code base.
  • Lead by example and provide guidance and mentorship to other developers.
  • Provide technical insights to Product Management.
  • Undertake spikes, prototyping, and R&D work to investigate feasibility, de-risk complex projects and cut through uncertainty.
  • Write clear and comprehensive tech designs and test plans, and ensure work is broken down into bite sized chunks and accurately sized.

What you’ll need to succeed

  • Proven track record working in Rust, C++, or C.
  • Proficiency with IP networking, including both low-level sockets programming and high-level application layer programming.
  • Excellent at writing automated tests, ideally following TDD practices.
  • Experienced with agile software development practices such as Scrum or Kanban.
  • Experienced at helping other team members be more productive, and to grow.
  • Good communication skills, both spoken and written.
  • Logical mindset and great problem solving skills.

Nice skills to have for this job

  • Experience with platform-native networking internals on one or many platforms, including Android, Apple, Linux, or Windows
  • Computer security: public key infrastructure, cryptography, and secure coding practices.
  • Experience with Golang or Python

Sharing is Caring

Know others who would be interested in this job?