Senior Software Developer - Parser Engineer

Posted:
8/14/2024, 6:56:34 PM

Location(s):
Karnataka, India

Experience Level(s):
Senior

Field(s):
AI & Machine Learning ⋅ Software Engineering

Worker Sub-Type:

Regular

 Job Description: 

THE POSITION

At the heart of BlackBerry/Cylance Product Development is an artificial intelligence-based threat detection system. Unlike traditional approaches, BlackBerry does not rely solely on signatures or even pre-determined behaviors to determine if something is known to be good or bad. Instead, we have developed a mathematical approach to identifying advanced threats. This intelligent system evolves in real-time as new threats emerge, providing continuous detection.

WHAT YOU WILL DO 

  • Design, document, develop and test features for Cylance security products
  • Develop software and tools in support of parsing, analyzing, featurizing, and vectorizing a broad variety of binary file formats
  • Design infrastructure and tools in support of a machine learning pipeline that includes analysis, reversing, parsing, and vectorizing of many different file formats found in the SW industry and the wild
  • Design and implement cohesive cross-platform solutions
  • Analyze and provide feedback during code reviews to ensure code is correct and adheres to the team’s quality standards
  • Develop and support API integrations with external vendors and our internal product teams
  • Program primarily in C# and Python, with an expectation to work with developers using other languages
  • Integrate designs into the team’s CI/CD workflow for build and test automation
  • Participate in team architecture discussions, from both contribution and execution standpoint
  • Engage with engineering teams inside the company as well as external partners

WHO WE ARE LOOKING FOR

  • Require 4+ years of an object oriented programming language, preferably C# in .NET and/or Mono environments, with a strong knowledge of
    • Interfaces
    • Inheritance vs. Composition
    • Basic design patterns
  • Desire experience in:
    • Multithreaded and Asynchronous programming
    • Extensible API development
    • Development and debugging under Windows environment
    • Some experience with OSX and/or Linux
  • Tools:
    • Git (comfortable with the command line)
    • Visual Studio for Windows
    • Rider/IntelliJ for Windows, Linux, MacOS
    • Virtual Environments and Docker a plus
       
  • SDLC, source control, unit testing, agile development methodologies
  • Insatiable intellectual curiosity and ability to find solutions to challenging problems
  • Basic understanding of artificial-intelligence concepts (e.g. Neural networks)
  • Familiarity with SW security concepts such as vulnerability, exploitation, and mitigation
  • Strong team player with the ability to work well within a diverse, cross-functional team
  • Takes initiative and ownership, and approaches all tasks and projects proactively
  • Ability to prioritize and complete multiple tasks with minimal supervision
  • Humility, accountability and positive approach
     

WHAT WE NEED FROM YOU TO APPLY

  • Current resume
  • Cover letter/summary expressing:
    • Why you are interested in working at BlackBerry/Cylance
    • The skills, strengths and expertise you will contribute to our diverse team of extraordinary talent

#LI-NR1

Scheduled Weekly Hours:

40