Senior Software Engineer ( C/C++, Security/Cryptography) (BBBH1565) Sydney CBD, Sydney, Australia

Salary: Super

Senior Software Engineer (C/C++, Objective C, Deployment, Unit Testing, Security/Cryptography)

Cyber Security (Must be eligable for clearance)

$140k - 170k + Super

Inner City Location

 

Description

Develop and maintain low-level systems, in constrained and complicated multi-architecture and multi-platform environments. These systems often require secure network communications, messaging, and data transport solutions. They also often feature automation and host/client based analysis, logic and decision making.

Responsibilities

Design, develop, test, deploy, maintain and improve software

Manage individual project priorities, deadlines and deliverables

Take an active role in cross-team projects as required

Cultivate and share knowledge of system, security, and application development best practises

Contribute to the development and maintenance of user guides and system documentation

Install software products and provide training for end users as required

Liaise with network administrators, systems analysts, programmers, and other software engineers to resolve any defects in products or company systems

Train, manage and provide guidance to junior software development staff

Skills/Experience

Highly competent at programming in one or more ‘mainstream’ languages, preferably C/C++, Objective C.

System-level development experience, across platforms.

A deep understanding of operating system internals and principles, such as synchronisation mechanisms and inter-process communication.

Experience of comprehensive unit testing, using CUnit style tests

Experience in using source control systems as part of a small team contributing to a rapidly changing code base

Broad knowledge of networking protocols and technologies

Knowledge of virtualisation technologies

Knowledge of security related software functionality

Familiarity and application of modern cryptographic techniques and technologies

It would be advantageous to be able to demonstrate some of the following:

Knowledge of assembly

A broad understanding of mobile and desktop operating system APIs

Knowledge or an appreciation for OS security features like DEP and ASLR

Experience of kernel level programming and/or device driver development

Experience with reverse engineering and debugging; particularly kernel level

;