Principal Software Engineer

8 - 12 years

30.0 - 35.0 Lacs P.A.

Bengaluru

Posted:2 months ago| Platform: Naukri logo

Apply Now

Skills Required

Javaalgorithmsc++pythonsoftware developmentstatic analysismachine learningeclipserustapplication securitydevopssoftware engineeringagilesoftware securitybig datadigital transformationagile methodology

Work Mode

Work from Office

Job Type

Full Time

Job Description

What the role offers: Design and implement static analysis algorithms based on recent relevant computer science research and literature. Develop new analysis features and add support for new languages and language features. Apply recent research developments from computer science literature where we can benefit from upgrading our algorithms and program representations. Write specifications for features as they are implemented. Analyse the quality of security finding results and product performance characteristics. Maintain the Fortify Static Code Analyzer code base using good software engineering practices. Collaborate with a project team of other software engineers, security researchers, and quality engineers, to develop reliable, cost-effective, and high-quality solutions. What you need to Succeed: Master's degree or Ph.D. (preferred) in Computer Science or equivalent, with emphasis on programming languages, static program analysis, compilers, or software security. 8+ years of solid enterprise C/C++/Java backend engineering skills Excellent written and verbal communication skills; Ability to effectively communicate design proposals and specifications. Qualified candidates have prior expertise in or knowledge of one or more of the following areas: Background in knowledge of compiler internals, static code analysis algorithms (abstract interpretation, dataflow, higher order analysis, buffer analysis, shape analysis, separation logic, context-insensitive incremental analysis). Background in Compiler construction (frontends, IR, type inference, program transformations) in one or more programming languages Background in the software security domain Desirable skills: Programming skills in additional coding languages and frameworks and desire to learn new programming languages Compiler tools (LLVM, MLIR, Rust HIR/MIR, Eclipse JDT, etc.) Experience with software systems running on multiple platform types. Strong analytical and problem-solving skills. Familiarity with agile development methodologies One last thing: You are persistent and inquisitive. You have to understand why things are happening the way they are. You are determined to understand cyber attack techniques at a very detailed level. You are a self-starter who is able to work with minimal management, however have strong collaboration and interpersonal skills to work together with several other professionals from other information security fields. Youre a creative thinker who wants to answer the question, Why? Your workstation is a pyramid of monitors that you can't take your eyes off of at the risk of missing something. You have a desire to learn new technologies. Your sense of humor, passion and enthusiasm shines through in everything you do.

Software Development
Waterloo ON +45

RecommendedJobs for You

Chennai, Pune, Mumbai, Bengaluru, Gurgaon

Chennai, Pune, Delhi, Mumbai, Bengaluru, Hyderabad, Kolkata

Pune, Bengaluru, Mumbai (All Areas)