Ugurcan Cakal

Software Engineer

I’m a self-motivated engineer, currently based in Zürich, with a knack for computers and electronics. I have hands-on experience in hardware-aware software development, especially in areas like machine learning, autonomous robotics, and embedded systems. Adapting to the situation, I can be a strong team player or a one-person army.

Contact

LinkedIn ugurcancakal
GitHub ugurcancakal

Location

Zürich, Switzerland

Work

SynSense AG

ML Algorithms and Applications Engineer

2022-07-01 — Present

Developed applications and user facing APIs for neuromorphic chips

  • Led the implementation of application software support for digital neuromorphic Xylo, and mixed-signal neuromorphic Dynap-SE2 chips. Offline simulation, hardware-in-the loop, SNN training and mapping, sim-to-real.
  • Trained and deployed application prototypes targeting various Xylo chip families, some of which are human activity detection with IMU signals, and background noise classification with audio signals.
  • Spearheaded the development and maintenance of Rockpool, an open-source python package for developing signal processing applications with spiking neural networks. Currently ranking as the first contributor (~2,000 commits).
  • Composed comprehensive user manuals and tutorials and delivered presentations to stakeholders.

Software Engineer (Intern)

2021-06-01 — 2022-07-01

Started as an internship, continued as a master thesis

  • Modeled the jax-backend time efficient custom hardware simulator, simulating VLSI dynamics of Dynap-SE2 chip.
  • Improved BPTT training pipeline execution time from 10s of days to 10s of minutes with just-in-time compilation.
  • Implemented non-uniform quantization, custom gradient computation, mismatch simulation algorithms to solve hardware mapping problem for analog mixed signal Dynap-SE2 processor.
  • Developed an efficient application deployment pipeline which significantly reduced the required effort for an application development: from an entire PhD thesis to an internship project.

GOHM

Machine Learning Engineer (Contract)

2021-01-01 — 2021-04-01

The first attempt to be a freelancer

  • Engineered a deep convolutional neural network application from scratch, enabling efficient processing of low-dimensional RF signals to detect analog device fingerprints for edge inference on the NVIDIA Jetson board.

Volunteer

METU Amateur Photography Club

Chair

2015-01-01 — 2017-01-01

Analog photography, thoughts and discussions

  • Organized several workshops, exhibitions, artists talks and tenders.

Education

Middle East Technical University

2019-09-01 — 2022-08-22
Electrical and Electronics Engineering, Masters (3.79/4.0 GPA)
Courses
  • Neurocomputers and Deep Learning
  • Applied Parallel Programming on GPU
  • Artificial Intelligence

Middle East Technical University

2014-09-01 — 2019-06-01
Electrical and Electronics Engineering, Bachelors (3.28/4.0 GPA)
Courses
  • Microprocessors
  • Computer Architecture I & II
  • Computational Intelligence
  • Machine Learning

Skills

Python

Object-Oriented Programming and Test Driven Development

C++

Optimization and Embedded Systems

Programming

C, CUDA, Verilog, and ARM Assembly

Machine Learning

PyTorch, Jax, TensorFlow, and sckit-learn

Software

unit testing, Git, and CI&CD

Languages

English

C1

Turkish

Native

German

B1