Personal details

Laurent S. - Remote

Laurent S.

Timezone: Brussels (UTC+2)

Summary

Experienced software engineer specialized in the design and implementation of low-level systems using C, C++ and Ruby. I also have experience crafting desktop apps while working at Apple, and mobile apps as a contractor.

Work Experience

Senior Software Engineer
Apple | Nov 2018 - Present
C++
C
Objective-C
Swift
TBA
Principal Software Engineer
Microsoft | Apr 2017 - Jul 2018
C#
C++
C
Xamarin
LLVM
JavaScript
WebAssembly
Software engineering for the Visual Studio Mobile organization. Worked on bringing C# (.NET) to WebAssembly by implementing an ahead-of-time compiling strategy based on the LLVM tooling (code generation and linker) and Mono, in C, C++ and JavaScript. Conducted research and prototyping of a new product. Created a full CSS Flexbox Module implementation in C with an extensive test suite and C# bindings and packaging (NuGet). The implementation was designed to be highly portable and minimalist. A managed port shipped as part of Xamarin.Forms at the Microsoft Build 2018 conference

Personal Projects

2011
Ruby
Android
C++
C
LLVM
iOS
RubyMotion is a toolchain that lets you write iOS and Android apps using Ruby. I wrote the initial revision of the product then improved and maintained it with a small team of programmers I carefully recruited.
MacRuby
2005
Ruby
C++
C
Cocoa
LLVM
macOS
MacRuby was Apple's official Ruby implementation which allowed you to write Mac apps using Ruby. I created and let the project while working at Apple.