JAV-015 Staff Software Engineer (Java/Scala/Cloud)

Canada-wide Remote

As a Software Engineer on the Security Intelligence team, you will contribute broadly to the detection engines, analysis systems, and other core intellectual property. This position is an opportunity to take on some of the most interesting challenges in the company and join the team that provides the fundamental technological building blocks of the Security Platform that underlies our client's category-defining personal and enterprise products. Their Security Platform is capable of analyzing millions of apps on a daily basis. Their analysis is trusted by Google to help identify potentially harmful applications before they enter the Play Store and by the world’s leading telecommunications providers to protect their customers. These are challenging problems and you must be open-minded to tackling new exploratory areas as well as evolving and continually improving key existing systems. You may be called on to work in high scale cloud systems, or directly on mobile platforms.

We're looking for motivated engineers who have experience building, monitoring, and maintaining high-volume, low-latency distributed SaaS solutions. You will be a member of the team that is responsible for a massively scalable platform that performs static analysis of iOS and Android applications, applying behavioral and malware detection policy.

In this role, you will work closely with our client's security research, data ingestion, and machine learning teams to:

  • enable threat hunting for state level security actors and their infrastructure.
  • support processing of continuously acquired Android and iOS applications.
  • identify components and functionality of mobile applications that can be used to determine their behavior and evaluate possible privacy risks.
  • invent new app analysis techniques, engines, and domain specific languages.
  • participate in hackathons and innovation fairs.

Requirements for this position:

  • A strong motivation for self-directed learning, while collaborating with experts across Lookout engineering teams, to take on challenges in areas such as: Scalable distributed systems design.
  • Reverse engineering of mobile applications and runtimes.
  • Mobile devices and platforms.
  • ML based data analysis support.
  • Experience designing/implementing large-scale, distributed, production class software on public cloud platforms such as AWS and GCP.
  • Strong software engineering fundamentals: object-oriented design, data structures, and algorithms.
  • Functional programming experience is highly desired.
  • Desire and ability to work across platforms and languages.
  • A quality-oriented mindset with a strong commitment to automated testing, metrics collection, monitoring, and continuous improvement in all of your work.
  • Ability to drive features from conception to deployment in an agile team with continual delivery.
  • 5+ years of overall development experience.
  • BS degree in Computer Science or similar Engineering discipline, or equivalent work experience.

Technologies that you will have an opportunity to work with:

  • Primarily Scala, with some Java, and occasionally Ruby (in JVM).
  • iOS, Android, and their respective development toolchains.
  • Graph, SQL, and NoSQL databases including TinkerPop, ElasticSearch, and others.
  • AWS and GCP primitives and distributed technologies.