RUB
Yetersiz veri · n=1

Company overview
Son ilan: 6 Ağustos 2026
Published in the selected period
Currencies are not converted. Lower and upper bounds are calculated independently and show their own sample sizes.
Yetersiz veri · n=1
Published records
Mülakatlar · 19
Mülakatlar · 12
Mülakatlar · 5
Mülakatlar · 4
Mülakatlar · 3
Mülakatlar · 2
Mülakatlar · 1
Mülakatlar · 1
Mülakatlar · 1
Mülakatlar · 1
Mülakatlar · 1
Mülakatlar · 1
Mülakatlar · 1
Grouped by direction
Sorular · 203
150 milyon kullanıcı, 75 milyon DAU, 225 milyon MAU, 1.2M okuma / 300k yazma zirvesi QPS, 5 milyon eşzamanlı kullanıcı, yılda 60 PB yeni veri, yıllık %30 büyüme, %99.95 SLA, p99 <200 ms okuma için, <300 ms yazma için destekleyen ölçeklenebilir bir mesajlaşma sistemi tasarımı. KONTEXT WhatsApp benzeri, 1:1 ve grup sohbetleri destekleyen, mesaj teslimini sağlayan, kullanıcıların çevrimiçi durumlarını gösteren ve multimedya dosyalarının (fotoğraf, video, ses) iletimini sağlayan dağıtık bir mesajlaşma sistemi tasarlamak gerekiyor. Sistem yüksek kullanılabilirlik ve düşük gecikme sağlamalı, yüksek paralellik desteklemeli ve küresel ölçekte ölçeklenebilir olmalı. FONKSİYONEL GEREKSİNİMLER - Kişisel (1:1) ve grup sohbetleri desteği, katılımcı ekleme/çıkarma imkanı - Metin mesajları ve multimedya dosyalarının gönderimi ve alınması Servisler veya istemciler seviyesinde end-to-end şifreleme mekanizmasının açık bir uygulaması görünmüyor, genel bir not dışında. - chat_id veya user_id'ye göre veritabanlarının sharding ve replikasyonunun açık bir tanımı yok, ölçeklenebilirlik ve arıza toleransı için. - Çevrimdışı mesaj senkronizasyonu ve teslim raporlarını işlemek için açık bir bileşen veya mekanizma yok. - Özellikle zirve yüklerde, veritabanları ve servisler arasında yük dengelemenin nasıl yapıldığı net değil. **Dikkate alınması gereken kritik noktalar:**
type Response interface{} type Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr belirli bir örneğin ip:port adresini içerir func NewBackend(addr string) *BackendImpl type backentry struct { backend Backend inflight int64 } type Balancer struct { backends []*backentry mu *sync.Mutex } var _ Backend = &Balancer{} // addrs, tüm dengeleme yapılabilir örneklerin adreslerini içerir func NewBalancer(addrs []string) *Balancer { data := make([]*backentry,len(addrs)) for i,addr := range addrs{ data[i] = &backentry{ backend: NewBackend(addr), inflight: 0, } } return &Balancer{backends:data} } func(b *Balancer)Invoke(ctx context.Context, req Request) (Response, error){ b.mu.Lock() entry := b.best() atomic.AddInt64(&entry.inflight,1) b.mu.Unlock() defer atomic.AddInt64(&entry.inflight,-1) return entry.backend.Invoke(ctx,req) } func(b *Balancer) best() *backentry{ var best *backentry for _,entry := b.backends{ if best == nil || atomic.LoadInt64(&entry.inflight) < atomic.LoadInt64(&best.inflight){ best = entry } } return best }
Sorular · 163
DiffUtil sınıfındaki areContentsTheSame ve areItemsTheSame yöntemleri arasındaki fark nedir ve bunlar ne işe yarar?
RxJava'da subscribeOn ve observeOn yöntemlerinin kullanımı arasındaki fark nedir ve bunlar yürütme akışını nasıl etkiler?
Создание собственного аналога findViewById для View
Нахождение ближайшего общего предка в иерархии экранов
Разбор поведения flatMap в цепочке RxJava
Sorular · 123
Sorular · 109
Что выведет console.log в примере №81
Функция определения палиндромности строки
Надёжный GET‑запрос с автоматическим повтором
Проверка массива на монотонность
Определение пути перелёта между двумя пунктами
Что будет выведено в консоль в данном JavaScript‑фрагменте?
Sorular · 97
Sorular · 83
Sorular · 57
Sorular · 41
Arabalar sınıflandırma görevinde özellik seçimi için ML kullanıldı mı?
Bir zamanlar, Yandex Reklamları sahtekarlık önleme stajyeri takıma katıldı. Sahtekarlık grubu, bot ziyaretleriyle trafiği taklit ettiği ve böylece botlar tarafından gösterim başına para aldığı sırada, stajyerin görevi, tüm bu sahte siteleri bulmaktı. İlginçtir ki, bu sitelerdeki tüm trafik, IP değiştirme ile oluşturulmuştu ve bu, sanki bir bot A şehrinden siteyi ziyaret ediyormuş gibi görünüyordu, ancak cihaz aslında tamamen farklı bir yerdeydi. Çok zaman geçti ve stajyer, bu sahtekarlık grubunu kapsamaya çalıştı, hatta bazı siteleri kısmen yakalamayı başardı. Ama tüm ağı yakalamak mümkün olmadı. Bir süre sonra, A şehrinde 02.08.2025 tarihinde mobil internetin tamamen olmadığını fark etti. Ancak, kablolu (ev) internet çalışmaya devam ediyordu. Buna göre, stajyer tüm sahte siteleri nasıl bulabilir? Elinizde, 30.07.2025 ile 10.08.2025 tarihleri arasındaki dönem için site logları tablo formatında: timestamp | site_id | city_id Her kayıt, bir cihaz tarafından bir siteye yapılan ziyareti temsil eder. Bot trafiğinin, günlük gerçek trafiğe göre çok daha az değiştiği biliniyor. Göreviniz, bölgesini şehir A olarak değiştiren botlardan oluşan trafiğin büyük ölçüde bulunduğu tüm siteleri bulmaktır. Not Veri içeren tablo logs adında. Tablo örneği kaydı: timestamp | site_id | city_id [phone]:13:53 | 6e84d9b71ca44aea | A
Sorular · 31
Sorular · 25
Sorular · 13
Sorular · 12
Sorular · 10
Sorular · 10
Sorular · 4
Sorular · 4
Sorular · 3
Sorular · 3
Sorular · 1