Mobile Software Engineer: Maple Ridge

Are you one of those people who realizes the importance of working on an inspiring project that holds great meaning to you? Would you be excited knowing that the core of our communications technology is connecting the next billion people, and in this role, YOU would be responsible for making the most difficult parts function! Then continue reading.
If you haven’t yet heard of Left, we’re a technology company based in the suburbs of Vancouver in Maple Ridge. Our award-winning Community Engagement Program and our top-notch culture have led us to win an award as “Best Workplace BC” and be recognized by the BC Tech Association as the Best in BC for “work, life, and play”. At the heart of our business (what you’ll be working on) we’re building a platform to connect the next billion people without infrastructure using a fully-distributed mobile mesh network for Android and iOS mobile phone platforms, along with IoT devices. Our platform will enable affordable, reliable, resilient, and secure access to the internet and connectivity to all users. We are passionate about making our mark on the world by improving efficiency, expanding capacity, and increasing throughput for everyone- particularly in developing markets.
Where does all this magic happen? We might have the coolest office space in the Lower Mainland, complete with a games room, library, lots of beer, and a plenty of silly people. We are purposefully located out in the ‘burbs so that our employees can live and work in their community. If you do commute it’s only 40 minutes against traffic from downtown Vancouver, and we’re just across the Golden Ears Bridge, so we are extremely convenient for most of Metro Vancouver and all the talented people in the Fraser Valley. And speaking of sky-high real estate prices, you actually have room to breathe out here and can afford to exhale. Are you ready to change the world yet?
About the Role: So what are we looking for?

  • A highly-technical brain that lights up when you think of all the edge cases, or creating test cases, building testbeds and experiments, and you find great joy in anticipating when things will break.
  • You rapidly design and develop protocols and code to support them, anticipate and document the limitations, triage the most important parts to implement first, and craft a plan to fix the rest later.
  • You’re basically a magician because you anticipate how other developers may use the code and are then able to implement things in an elegant and foolproof manner.
  • You deeply understand the limitations and challenges specific to wireless communications.
  • You want to tackle optimizing for overhead, energy efficiency, and balance the tradeoffs between reliability, throughput, and delay.
  • Regular activities include brainstorming, whiteboarding, design, documentation, and implementation of core communications protocols library. This may include identifying and selecting existing libraries, integrating them as well as developing new code.
  • You find comfort in making whiteboard presentations, defending your ideas and being challenged by an engaged and passionate team, particularly our Chief Networking Scientist whom you’ll be working with closely.
  • You’ll aid in security audits of existing code.
  • You get to play (more professionally known as build) and test proof-of-concepts, evaluating their performance and documenting the process.
  • Ensure all code is stable, secure and developed in a way that makes it easy for both 3rd party developers and end users to use and deploy.

Essential Skills: What do you need to get here?

  • You have woven your passions into earning a Bachelor’s Degree in Computer Science, Computer Engineering, or other related fields.
  • Experience with java, c/c++, objective-c developer, particularly with socket communications.
  • Experienced with Android Studio, Git, Unit-testing, deploying apps on Android & iOS.
  • You’ve proudly developed and released APIs/libraries that are used in other projects.
  • Passion radiates when you talk everything mesh communication, including the mesh networks you’ve deployed.
  • You’ve built and deployed Android & iOS apps using Bluetooth, Wi-Fi direct, Wi-Fi p2p, Multipeer, NFC.
  • In your experience developing p2p and decentralized applications, you contributed to the design and implementation of the communications protocols.
  • You’re happy to show us your contributions to open source and can provide git repositories with contributions.
  • You can create timing diagrams, protocol headers, state machines, and database schemas. Even better, you can communicate all of those to people of varying technical knowledge.
  • You have in-depth knowledge of various parts of the OSI stack along with accompanying protocols and technologies including: TCP, UDP, IP, ICMP, DHCP, SSDP, UPNP, RIP, OSPF, BGP, ARP, RTP, Hole-punching, Network Virtualization, Multicast, Broadcast.
  • You thoroughly understand (and preferably have implemented and deployed) one or more of BATMAN, OLSR, DSDV, DSR, AODV or other mesh/adhoc routing protocols.
  • You’re able to explain the limitations of TCP with wireless networks, the benefits of cross-layer design, understanding or how MPTCP works.
  • You understand routing algorithms such as Dijkstra’s algorithm, A*.
  • You hold yourself and others to high standards because you believe the impossible is possible.

Useful Things:

  • You took it to the next level by earning an advanced degree (M.Sc or Ph.D.) in CS, Computer engineering or ideally an area of wireless communication.
  • Knowledge and curiosity, which is why you’ve published papers in the area of cryptography, security, and encryption.
  • Experience implementing protocol specification, eg., an RFC.
  • You thrive on innovation so you’ve contributed to a protocol design eg,, co-authorship or lead authorship of IETF drafts, RFCs etc.
  • Simulation tools such as ns2, ns3 are something you’re comfortable with, that’s why you have experience setting up or working with a network testbed.
  • You’re familiar with autonomous networking concepts such as self-*, autoconf, stateless autoconfig.
  • You’re excited to share your experience with cryptocurrencies and blockchain.
  • Jenkins, continuous integration, automated testing experience is very useful.
  • You have some backend experience (databases, server side languages, etc.).


  • You are entrepreneurial. This means you know failure is an option, but you also know that when you learn from failure, this is often when the impossible becomes possible.
  • We still classify ourselves as a start-up even though we are an international office of 95+. We currently have about 35 in Maple Ridge and 70+ in Bangladesh, so you must want to be in the start-up environment.
  • You wish to be part of a smaller team where you would have a direct impact on the business as a whole.
  • You must be a self-starter and able to take initiative and manage your own projects.
  • You can self-learn as things change; and quickly, because learning must be ongoing and things change often.
  • We are Dog positive; Django is our Director Of Greetings and he outranks most of us.
  • You must believe in the mantra of “Work hard, play hard.”
  • You must be able to laugh at yourself and roll with the punches.

Compensation and Next Steps
Your salary will be competitive and based on your experience. Upward movement and potential is something that we value and reward.
If you are interested in working on a world-class platform and business, then please send us a recent resume (online links are fine) along with your salary expectations to No phone calls or unexpected visits please because we have developers here and they are easily startled.
Left is a small, but growing company. Fit and a willingness to learn is more important than experience. Thanks in advance for considering us.
Learn more about Left or about our hot project at
We are an equal opportunity employer and love diversity at our company!  We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, or disability status