
Gil Montag
Senior Embedded Software Engineer | Linux Kernel
Salary / Daily rate
Haifa, Israel
Freelance
Remote only
Skills
Languages
About me
Intro
Embedded software engineer with 15+ years at Intel and top-tier companies, specializing in Linux kernel development and SoC integration. Led pre-silicon testing for client products and built custom Linux systems from scratch using Buildroot. Expert in C/C++, Python, and HW/SW integration for high-performance embedded solutions.
Work experience
SW Engineer
Intel Corporation
May 2018 - Dec 2024
6 years 8 months
Haifa, Haifa District, Israel · Hybrid
* System Integration Engineer/Lead, Working in PSS CCG. Pre-Si Integration/testing of TCSS (Type C Subsystem) as a part of client products: MTL, LNL, PTL. As a member of this group, I designed, implemented and used an in-house Hybrid based solution (Simics+FPGA) to test parts of the SOC in the lab during their RTL stage. Typically, “north” parts of the SOC were implemented in a Simics model (pure SW), while south parts (e.g. PCH) were emulated using a HAPSTM based FPGA platform. Communication between north and south was achieved using the standard way for intel’s SOCs - IOSF (Primary/Sideband) * Linux/Embedded SW engineer in the AIPG group Working on the NNPI Product line. NNPI is a SOC based on Intel’s x86 architecture with HW extensions making it capable of high performance AI computations. As a member of the OS group, I was responsible for building (from source) and customizing the Linux OS running on the chip. The Linux OS used, was built from scratch using Buildroot™ infrastructure. As a member in the OS group I was the point of contact/expert for any integration/customization needs which were raised by other SW groups in the project, as well as integration with the BIOS teams. Some of my activities include modifying/fixing /adding features/integration of kernel modules used by our system, and assisting team members adding new features/flavors to the system. Another part of my responsibilities was building an automated environment/scripting to build/pack new versions/flavors of the OS, and integrating them with other SW parts (kernel modules/libraries/user space code) into one integrated bootable image ready to be loaded by the SOC. During my work I used the following technologies: 1. Bash scripting 2. Linux system programming 3. Linux user space programming (UMD) 4. Linux kernel programming (KMD) 5. Python 6. “C”/”C++” 7. Buildroot™
Senior Embedder software engineer
Harmonic
Jan 2012 - May 2018
6 years 5 months
Center District, Israel · On-site
Senior Low level/driver SW engineer in the Edge product group, • Working on the NSG product line – a networking gateway which is installed in the cable company's headend and transfers internal network video/VOD data over the QAM media traveling to the subscribers homes, and decoded by their set-top boxes. Such a gateway is composed of a rugged PC module surrounded by on board advanced network processors and in-house made advanced logic (FPGAs) • In the last years, NSG products diverted mainly to providing CableOSTM product line - providing/implementing SW based downstream/upstream DOCSIS 3.1 standard for supplying high speed cable modem service to cable modem subscribers. During the time I was working there, I specialized in the following areas: 1. Linux/Debian Kernel/kernel Module programming 2. Linux user mode low level (register level) programming (C/C++/Python/Bash) 3. STM32 Microcontroller
SW Engineer (Contractor)
Qualcomm
Jan 2010 - Jan 2012
2 years 1 month
Haifa, Israel
Part of a VI team implementing Design verification SW to verify/test logical correctness/functionality of digital IP cores developed in Qualcomm. Specifically, I worked on SD/MMC host, so I'm familiar with SD spec 3.0 and MMC/eMMC spec 4.4 Development Tools and Languages: "C", TRACE32
SW Engineer
Saguna Networks Ltd
May 2009 - Jan 2010
9 months
Haifa, Israel
Participated in the implementation of a disctibuted cache/proxy server for wireless infrastructure. The system improves the multimedia streaming performance of a cellular data connection by caching content locally within the base station Specifically, I implemented a traffic shaping algorithm (leaky bucket) to control data rate, and an SNMP sub agent.
Software Engineer
Intel
Mar 2007 - May 2009
2 years 3 months
Wireless Product Division – NDIS drivers for Intel’s WiFi/WiMAX mobile NIC solutions. I was part of a group of developers who designed, implemented and maintained existing and new features, as well as supporting internal/external customers (OEMs) of the NICs. As a developer in the drivers team, I was introduced to the general structure of an NDIS 5.x/6.x miniport driver both on Windows XP and on Windows Vista and to aspects related to Kernel mode drivers in general as well as 802.11bgn networking. I also had experience debugging kernel mode drivers using external (via 1394) WinDbg instance, and using DbgView as well as other in-house tools used for driver and microcode debugging.
Staff Software Engineer
Zoran
Apr 2004 - Mar 2007
3 years
• I60 – A SOC device that implements a whole DVD Recording System. Acted as a team member in a team responsible for the Front End of the system. Front End is the part of the system responsible for data decoding, extraction and error correction (ECC) from the optical media in playback, and for the encoding and FEC in the recording path. The front end code runs on a MIPS32Ktm processor and is written in "C". Binary image code size is approx 2M byte. In my role I designed the code architecture, HW/SW interfaces and HW requirements during the chip design to make the HW fit the system requirements. I also implemented the "write" path in the code. During the development, I collaborated with colleagues inside the company in California and China, and with a third party contractor who designed for us the higher layer (ATA/PI soft-interface to the drive). Development tools: "C", Green Hills
Staff SW Engineer
Qualcomm
Mar 1996 - Mar 2004
8 years 1 month
QuSAT – A geostationary satellite communication system: SW engineer, involved in developing base station control SW. JBear – A GSM over CDMA infrastructure: SW Engineer involved in developing/porting a GSM protocol stack into a CDMA mobile phone. My job included adaptations to the phone SW in all layers from UI to call control. Turbo Decoder Prototype Implementation: SW Engineer/Lead, involved in developing a client server system. Server resided in a PC running a turbo decoder HW, and its device driver (developed by team member) and client controlled/configured it from remote sites using CORBA and from local GUI using MFC. Channel Simulator for CDMA air interface: Team lead in the embedded s/w part. System was based on a cPCI cage containing several signal processing units, and a PPC CPU controlling it. Operating system: VxWorks IS2000 Base Station Simulator: Responsible for the service option subsystem – job included design and maintenance of complex OO modules, using Rational Rose for UML modeling and C++ for implementation. Operating system: VxWorks CAT – CDMA and TDMA mobile ASIC: Firmware Team lead – responsible for the TDMA (IS136) modem implementation using an in-house DSP module. HUBBIT – A mobile satellite receiver emulator to be used as a load tester for new generation of OmniTracks™ Hubs – Responsible for the implementation of physical layer software (C++, VxWorks) Development tools operating systems, packages and languages: "C", "C++", UML, CORBA, VxWorks, Windows/MFC
DSP/Embedded SW Engineer
National Semiconductors
Nov 1991 - Mar 1996
4 years 5 months
TyIn2000: A plug in ISA modem card for PC: Participated in the development of an ASIC for the modem card. Language: ABEL Developed an evaluation board for NSC new super I/O chips. Job included integration/testing of the new prototype chips as well as writing driver SW to run them. Developed, simulated and implemented algorithms for telephony voice processing (Echo cancellation – Full Duplex Speakerphone, CELP compression – Digital answering systems)
HW Engineer
Fibronics
Apr 1988 - Dec 1991
3 years 9 months
Senior HW Engineer
Education
Technion - Israel Institute of Technology
Msc EE
1998 - 2000
2 years 1 month
Technion - Israel Institute of Technology
BscEE
1994 - 1998
4 years 1 month