Home          Hacks          Photo          Job           Blog           About 

Julien Lerouge                                 Email:  julien.lerouge@gmail.com 
San Jose, CA                                   Cell:   (408) 230-6387

                        SOFTWARE ENGINEERING MANAGER

I am an experienced hands on technical engineering manager.  I love  coding  and
designing elegant systems that  perform  at  the  highest  performance  &  scale
required for the job.  I am very curious and analytical, and can quickly  master
new technologies.

I have designed & implemented  software  systems  that  range  from  specialized
device drivers to  compilers,  targeting  platforms  ranging  from  embedded  to
server class. 

I have experience recruiting  and  managing  a  small  team  of  highly  skilled
engineers, keeping the day to day operations on  course  to  achieve  successful
product deliveries.


2009 - Present

   Apple, Inc. , Software Engineering Manager (California, USA)
  * Leading development of custom and innovative tools for DRM applications,
    involving strong cryptography, clang &  LLVM  compiler technologies and
    advanced obfuscation techniques.
  * Debugging compiler bugs & miscompilations.
  * Drive performance & power optimizations.

2006 - 2009

   Apple, Inc. , Software Engineer (California, USA)

  * LLVM compiler related optimizations for DRM applications, code obfuscation
    and code protection, on MacOS, iOS and Windows platforms, user and kernel
  * iPod software development & debugging (JTAG).
  * Reverse engineering (x86 & ARM).
  * Audio & Video processing.
  * Build automation, continuous integration.

2004 - 2006

   Sigma Designs , Software Engineer (California, USA)

  * Design and Implementation of an Elliptic  Curve  library,  optimized  for
    MIPS (C and assembly programming).
  * Implementation of AACS for Blu-ray and HD-DVD, on a trusted hardware.
  * Design and implementation of a secure bootloader.
  * Integration of Microsoft WMDRM in Sigma's chip  architecture  (UPnP,  UDP
    and TCP network programming, RSA and AES ciphers).
  * Secure key loading implementation for  production  facility,  applied  to
  * General purpose video/audio drivers development and debugging for Sigma's
    chips (UPnP, streaming, MPEG4 audio/video).


   Sigma Designs , Linux Software Engineer Intern (California, USA)

  * Linux Device driver development : debugging, porting to various
    architectures (MIPS, ARM).
  * Linux Frame buffer implementation for Sigma's latest Media processor.
  * Porting of an older multimedia framework to the newest chip (C++).


   École Normale Supèrieure , Software Intern (France)
  Grid Computing in the team of Y.  Robert :  MetaSimGrid , Towards realistic
  scheduling simulation of distributed applications, ( paper ).

1999 - 2000

  French Navy, Navigator : officer in charge of  navigation,  third  officer  on
  board the ocean-going tug  Malabar  (A664, Brest, France).


2002 - 2004 (MS EE)

   École Nationale Supèrieure des Télécommunications  (Paris, France)

  ASIC designs, robotics and embedded systems, real  time  and multimedia

1999 - 2002 (MS CS)

   École  Polytechnique  (Palaiseau, France)

  Computer science, networking and databases.


I am inventor or co-inventor on numerous patents related to software security,
for example:

*  Software integrity verification using variable block length and selection 
*  System and method for annotation driven integrity verification 
*  System and method for array obfuscation 
*  System and method for branch extraction obfuscation 
*  System and method for call path enforcement 
*  System and method for executing an encrypted binary from a memory pool 


I have experience taking projects from initial idea to finished products.

My main programming languages are  C++  &  C.   I  often  use  Python  to  build
infrastructure and other tools (continuous build & integration for e.g.).

I have experience building, benchmarking & debugging software for user & kernel
space, on MacOS, iOS, Linux, Windows and Android targets.


Strong  Linux  supporter  since  2.0.11  kernel.   Creator  of  the   ACPI4Asus 
project, driver  for  ASUS  ACPI  proprietary  extensions,  listed  as  official
Linux maintainer for several years. Development involved extensive knowledge of
the kernel ACPI subsystem and reverse engineering  of  the  ACPI  tables.

2020/09/17                                      Debian / W3C / vim / PHP powered