Name: Markus Lavin

Location: Lund, Sweden

Year of birth: 1978

Resume

Personal profile

Enthusiastic software engineer with 12+ years of industry experience. Professional interests range from compiler engineering, graphics programming, embedded software to digital architecture and design.

Employment

Software developer @ Ericsson

Location: Lund

Duration: October 2018 - Present

Summary: DSP compiler engineer working on compilers for the company’s proprietary DSPs.

Supreme genius engineer1 @ ZZZ-Consulting

Location: Lund

Duration: November 2017 - October 2018

Senior software engineer @ ARM

Location: Lund

Duration: August 2011 - November 2017

Summary: GPU compiler engineer working on compilers for the company’s Mali series GPUs.

Main achievements:

  • Compiler middle end infrastructure (major improvements and rewrite)
  • Loop analysis and optimizations
  • Initiated and developed a very appreciated Lauterbach T32 like debugging tool for GPU model traces
  • Started reading club on compiler theory and graphics
  • Bug patrol
  • And a lot more

Software engineer @ ST-Ericsson

Location: Lund

Duration: September 2006 - July 2011

Summary: Working mainly with DSP software and tools (e.g. execution platform, debugger software, coredump analyzers, compiler). Working with ARM software. General low level programming.

Main achievements:

  • Execution platform for DSP cluster
  • Debugging tools for DSP cluster
  • Logging framework

Software developer @ Gambro

Location: Lund

Duration: August 2001 - June 2002

Summary: Embedded software and USB communication

Software developer @ Axis Communications

Location: Lund

Duration: June 2000 - July 2001

Summary: Embedded Linux and USB host device driver

Projects (outside of work)

  • Various FPGA constructions (mostly a VLIW DSP and a multithreaded CPU)
  • Prototype C compiler to evaluate code generation techniques
  • Graphics engine (first based on OpenGL then Vulkan)

Skills / expertise

Technical

  • C, C++ and assembly
  • Graphics programming (OpenGL, Vulkan)
  • Compiler engineering (infrastructure, optimization passes, feature development)
  • Embedded systems (execution platform, multi core, debugging, DSP, FPGA, RTL, Verilog)

Personal

  • Curious
  • Innovative
  • Once hooked very driven

Education

Lund University M.Sc., Mathematics 2002 - 2006 Master’s thesis in numerical analysis

Master’s thesis supervision

  • Develop and prototype code generation techniques for a clause-based GPU (Dept. of Computer Science, Lund University, 2017)
  • Basic-block vectorization for graphics compilers (Dept. of Computer Science, Lund University, 2013)
  • Value Range Propagation on an Embedded GPU (Dept. of Computer Science, Lund University, 2013)
  • Retargeting GCC for a DSP architecture (Dept. of Computer Science, Lund University, 2010)

Personal interests

My family, and at some previous point in life also hiking, nature, rock climbing, slacklining, boardsports and natural movement in general.

References

Given at request.

1 Well since it is my company I can assign myself this ridiculous title. On a more serious note though I do find that job titles are rather meaningless and often times arbitrarily applied.