Text copied to clipboard!

Başlık

Text copied to clipboard!

Gömülü C/C++ Geliştirici

Açıklama

Text copied to clipboard!
Aradığımız kişi, gömülü sistemler alanında güçlü teknik bilgiye sahip, C ve C++ dillerinde yüksek kaliteli, güvenilir ve performans odaklı yazılım geliştirebilen bir Gömülü C/C++ Geliştiricidir. Bu rolde çalışacak aday, mikrodenetleyiciler, gerçek zamanlı işletim sistemleri, donanım-yazılım entegrasyonu ve kaynak kısıtlı ortamlarda uygulama geliştirme konularında aktif sorumluluk üstlenecektir. Pozisyon, yeni nesil cihazların yazılım mimarisinin oluşturulmasından mevcut ürünlerin bakımına, hata ayıklamadan optimizasyona kadar geniş bir çalışma alanı sunar. Bu görevde, adayın donanım ekipleri, test mühendisleri, ürün yöneticileri ve kalite ekipleriyle yakın iş birliği içinde çalışması beklenir. Geliştirilecek çözümler; haberleşme protokolleri, sürücü geliştirme, bellek yönetimi, kesme mekanizmaları, güç optimizasyonu ve sistem kararlılığı gibi kritik alanları kapsayabilir. Adayın yalnızca kod yazması değil, aynı zamanda teknik gereksinimleri analiz etmesi, sistem davranışını değerlendirmesi ve ürün yaşam döngüsü boyunca sürdürülebilir yazılım çözümleri üretmesi önemlidir. Başarılı bir aday, hata ayıklama araçlarını etkin kullanabilen, osiloskop, mantık analizörü ve JTAG/SWD gibi geliştirme araçlarına aşina, gömülü yazılım geliştirme süreçlerinde disiplinli çalışan bir profesyonel olacaktır. Versiyon kontrol sistemleri, sürekli entegrasyon süreçleri ve kod inceleme uygulamaları konusunda bilgi sahibi olması beklenir. Ayrıca, güvenlik, performans ve ölçeklenebilirlik gibi kalite kriterlerini göz önünde bulundurarak yazılım geliştirmesi gerekir. Bu pozisyon, otomotiv elektroniği, tüketici elektroniği, endüstriyel otomasyon, IoT cihazları, medikal cihazlar ve telekomünikasyon ekipmanları gibi farklı alanlarda ürün geliştiren şirketler için kritik öneme sahiptir. Adayın UART, SPI, I2C, CAN, Ethernet veya BLE gibi haberleşme protokollerine hâkim olması, donanım veri sayfalarını okuyup yorumlayabilmesi ve teknik dokümantasyon hazırlayabilmesi büyük avantaj sağlar. Eğer düşük seviyeli programlama konusunda tutkuluysanız, donanımla yakın çalışan yazılımlar geliştirmekten keyif alıyorsanız ve karmaşık teknik problemleri sistematik şekilde çözebiliyorsanız, bu rol sizin için güçlü bir kariyer fırsatı sunar. Bu pozisyonda, yenilikçi ürünlerin temel yazılım katmanlarını geliştirerek doğrudan ürün kalitesine, güvenilirliğine ve kullanıcı deneyimine katkı sağlayacaksınız.

Sorumluluklar

Text copied to clipboard!
  • Gömülü cihazlar için C/C++ tabanlı yazılım geliştirmek
  • Mikrodenetleyici ve çevre birimleri için sürücü yazmak ve optimize etmek
  • Donanım ekipleriyle birlikte sistem entegrasyonu çalışmalarını yürütmek
  • Gerçek zamanlı işletim sistemleri üzerinde uygulama geliştirmek ve bakım yapmak
  • Hata ayıklama, performans analizi ve bellek optimizasyonu gerçekleştirmek
  • Teknik dokümantasyon hazırlamak ve kod incelemelerine katılmak
  • İletişim protokollerini uygulamak ve doğrulamak
  • Ürün yaşam döngüsü boyunca yazılım bakım ve iyileştirme faaliyetlerini sürdürmek

Gereksinimler

Text copied to clipboard!
  • Bilgisayar, Elektrik-Elektronik veya ilgili mühendislik alanlarında lisans derecesi
  • C ve C++ ile gömülü yazılım geliştirme deneyimi
  • Mikrodenetleyiciler ve düşük seviyeli programlama konusunda güçlü bilgi
  • UART, SPI, I2C, CAN veya benzeri protokollerle çalışma deneyimi
  • Hata ayıklama araçları ve laboratuvar ekipmanları kullanabilme becerisi
  • RTOS, bellek yönetimi ve kesme tabanlı sistemler hakkında bilgi
  • Git gibi versiyon kontrol sistemlerine hâkimiyet
  • Teknik doküman okuma ve yazma becerisi

Potansiyel mülakat soruları

Text copied to clipboard!
  • Daha önce hangi mikrodenetleyici aileleriyle çalıştınız?
  • C ve C++ ile geliştirdiğiniz gömülü projelerden örnek verebilir misiniz?
  • RTOS kullandığınız bir projede hangi sorumlulukları üstlendiniz?
  • Hangi haberleşme protokollerinde uygulama geliştirme deneyiminiz var?
  • Bir donanım-yazılım entegrasyon sorununu nasıl teşhis edersiniz?
  • Hata ayıklama sürecinde hangi araçları kullanmayı tercih edersiniz?
  • Kaynak kısıtlı sistemlerde performans optimizasyonunu nasıl ele alırsınız?
  • Kod kalitesini ve sürdürülebilirliği sağlamak için hangi yöntemleri kullanırsınız?