Masalah teknis Mail.ru Group 2019

Masalah teknis Mail.ru Group 2019

Pada akhir Mei, lulusan kami dari Technopark (Bauman MSTU), Technotrack (MIPT), Technosphere (Lomonosov Moscow State University) dan Technopolis (Peter the Great St. Petersburg Polytechnic University) mempertahankan proyek diploma mereka. Tiga bulan dialokasikan untuk bekerja, dan orang-orang tersebut menginvestasikan pengetahuan dan keterampilan yang diperoleh selama dua tahun studi ke dalam gagasan mereka.

Secara total, ada 13 proyek pertahanan yang memecahkan berbagai masalah di berbagai industri. Misalnya:

  • penyimpanan cloud dengan enkripsi file kriptografi;
  • platform untuk membuat video interaktif (dengan akhiran berbeda);
  • papan pintar untuk bermain catur sungguhan melalui jaringan;
  • arsitektur untuk pengambilan artikel medis secara cerdas;
  • Perangkat lunak untuk mengajar anak-anak sekolah dasar dasar-dasar algoritma.

Serta proyek dari unit bisnis:

  • Sistem CRM untuk utusan TamTam;
  • layanan web untuk mencari foto tematik di peta untuk Odnoklassniki;
  • alamat layanan geocoding untuk MAPS.ME.

Hari ini kami akan memberi tahu Anda lebih detail tentang lima proyek lulusan kami.

Pencarian cerdas artikel medis

Masalah teknis Mail.ru Group 2019

Ada banyak bidang dalam bidang keilmuan, yang masing-masing dilakukan penelitian, sejumlah besar artikel diterbitkan di berbagai jurnal. Ini adalah teknologi informasi, fisika, matematika, biologi, kedokteran dan banyak lainnya.

Penulis proyek memutuskan untuk fokus pada bidang medis. Hampir semua artikel tentang topik medis dikumpulkan di portal PubMed. Portal menyediakan pencariannya sendiri. Namun kemampuannya sangat terbatas. Oleh karena itu, mereka meningkatkan sistem pencarian, menambahkan dukungan untuk kueri panjang, dan kemampuan untuk menyaring kueri menggunakan pemodelan topik.

Masalah teknis Mail.ru Group 2019
SERP berisi daftar peringkat dokumen dengan topik yang ditentukan, dan kata serta istilah yang terkait dengan topik ini disorot menggunakan pemodelan topik probabilistik. Pengguna dapat mengklik istilah yang disorot untuk mempersempit permintaan pencarian.

Masalah teknis Mail.ru Group 2019
Untuk mempercepat pencarian melalui database PubMed yang besar, penulis menulis mesin pencari mereka sendiri yang dapat dengan mudah diintegrasikan ke dalam infrastruktur apa pun.

Pencarian dilakukan dalam tiga tahap:

  1. Dokumen kandidat dipilih menggunakan indeks terbalik.
  2. Kandidat diberi peringkat menggunakan algoritma BM25F, yang memperhitungkan berbagai bidang dokumen selama pencarian. Dengan demikian, kata-kata pada judul mempunyai bobot lebih dibandingkan kata-kata pada abstrak.
  3. Sistem caching juga digunakan untuk mempercepat pemrosesan permintaan yang sering.

Masalah teknis Mail.ru Group 2019

Arsitektur layanan mikro:

Masalah teknis Mail.ru Group 2019
Pada dasarnya, data teks terstruktur ditransfer antar layanan. Untuk kecepatan transfer yang tinggi, GRPC digunakan - kerangka kerja untuk menghubungkan modul dalam arsitektur layanan mikro. Serialisasi data juga digunakan menggunakan format pertukaran pesan Protobuf.

Komponen apa yang termasuk dalam sistem:

  • Server untuk memproses permintaan pengguna yang masuk di Node.js.
  • Permintaan penyeimbangan beban menggunakan server proxy nginx.
  • Server Flask mengimplementasikan REST API dan menerima permintaan yang diteruskan dari Node.js.
  • Semua data mentah dan diproses, serta informasi kueri, disimpan di MongoDB.
  • Semua permintaan untuk hasil yang relevan untuk tematisasi dokumen dikirim ke RabbitMQ.

Contoh hasil pencarian:

Masalah teknis Mail.ru Group 2019

Apa yang kami rencanakan selanjutnya:

  • Rekomendasi saat menyusun ulasan tentang topik tertentu (mengidentifikasi topik penting dalam dokumen dan menelusuri subkumpulan dokumen).
  • Cari file PDF.
  • Segmentasi teks semantik.
  • Lacak topik dan tren dari waktu ke waktu.

Tim proyek: Fedor Petryaykin, Vladislav Dorozhinsky, Maxim Nakhodnov, Maxim Filin

Blokir Log

Masalah teknis Mail.ru Group 2019

Saat ini, ketika mengajar pemrograman dan ilmu komputer, anak-anak usia sekolah dasar (kelas 5–7) mengalami kesulitan dalam menguasai materi. Selain itu, jika siswa ingin menyelesaikan tugas di rumah, mereka harus menginstal software tambahan di komputernya. Guru harus memeriksa sejumlah besar solusi serupa terhadap masalah, dan dalam kasus pembelajaran jarak jauh, mereka juga harus mengembangkan metodologi untuk menerima tugas dari siswa.

Penulis proyek Block Log sampai pada kesimpulan: ketika mengajar anak-anak usia sekolah dasar dasar-dasar algoritma, penekanannya tidak pada menghafal perintah bahasa pemrograman, tetapi pada membangun diagram algoritma. Hal ini akan memungkinkan siswa meluangkan waktu dan tenaga untuk merancang suatu algoritma, daripada mengetikkan struktur sintaksis yang rumit.

Panggung Blokir Log memungkinkan Anda untuk:

  1. Membuat dan mengedit diagram alur.
  2. Jalankan flowchart yang dibuat dan lihat hasil kerjanya (output data).
  3. Simpan dan muat proyek yang dibuat.
  4. Menggambar gambar raster (menghasilkan gambar berdasarkan algoritma yang dibuat oleh anak).
  5. Menerima informasi tentang kompleksitas algoritma yang dibuat (berdasarkan jumlah operasi yang dilakukan dalam algoritma).

Pembagian peran menjadi guru dan siswa diharapkan. Setiap pengguna menerima status pelajar, untuk mendapatkan status guru, Anda harus menghubungi administrator sistem. Guru tidak hanya dapat memasukkan deskripsi dan kondisi masalah, tetapi juga membuat tes otomatis yang akan diluncurkan secara otomatis ketika siswa mengirimkan solusi masalah ke dalam sistem.

Editor Log Blok Peramban:

Masalah teknis Mail.ru Group 2019

Setelah menyelesaikan soal, siswa dapat mendownload solusinya dan melihat hasilnya:

Masalah teknis Mail.ru Group 2019

Platform ini terdiri dari aplikasi front-end di Vue.js dan aplikasi back-end di Ruby on Rails. PostgreSQL digunakan sebagai databasenya. Untuk menyederhanakan penerapan, semua komponen sistem dikemas dalam container Docker dan dirakit menggunakan Docker Compose. Block Log versi desktop didasarkan pada kerangka Electron. Webpack digunakan untuk membuat kode JavaScript.

Tim proyek: Alexander Barulev, Maxim Kolotovkin, Kirill Kucherov.

Sistem CRM untuk utusan TamTam

Masalah teknis Mail.ru Group 2019

CRM adalah alat untuk interaksi yang nyaman antara bisnis dan pengguna TamTam. Fungsi-fungsi berikut telah dilaksanakan:

  • Konstruktor bot yang memungkinkan Anda membuat bot tanpa keahlian pemrograman. Dalam beberapa menit Anda bisa mendapatkan bot yang berfungsi penuh yang tidak hanya dapat menampilkan beberapa informasi kepada pengguna, tetapi juga mengumpulkan data, termasuk. file yang dapat dilihat administrator nanti.
  • RSS. Anda dapat dengan mudah menghubungkan RSS ke saluran mana pun.
  • Posting tertunda. Memungkinkan Anda mengirim dan menghapus pesan pada waktu yang telah ditentukan.

Tim juga ikut serta dalam pengujian Bot API, membuat beberapa bot yang ditulis sendiri, seperti bot untuk Piala Hoki Dunia 2019, bot untuk registrasi/otorisasi di layanan kami, dan bot untuk CI/CD.

Infrastruktur solusi:

  • Server manajemen berisi sistem pemantauan untuk setiap server dan setiap container Docker di dalamnya untuk mendeteksi masalah dan menyelesaikannya dengan cepat dan mudah, melihat berbagai metrik dan statistik penggunaan. Ada juga sistem untuk manajemen konfigurasi jarak jauh aplikasi kita.
  • Server pementasan berisi versi aplikasi kita saat ini, tersedia untuk pengujian umum oleh tim pengembangan.
  • Server manajemen dan pementasan hanya tersedia melalui VPN untuk pengembang, dan server produksi berisi versi rilis aplikasi. Itu diisolasi dari tangan pengembang dan hanya tersedia untuk pengguna akhir.
  • Sistem CI/CD diimplementasikan menggunakan Github dan Travis, notifikasi menggunakan bot khusus di TamTam.

Masalah teknis Mail.ru Group 2019

Arsitektur aplikasi adalah solusi modular. Aplikasi, database, manajer konfigurasi, dan pemantauan diluncurkan dalam wadah Docker terpisah, yang memungkinkan Anda mengabstraksi dari lingkungan peluncuran, mengubah, atau memulai ulang wadah terpisah. Pembuatan topologi jaringan dan pengelolaan container dilakukan menggunakan Docker Compose.

Masalah teknis Mail.ru Group 2019

Tim proyek: Alexei Antufiev, Egor Gorbatov, Alexei Kotelevsky.

ForkMe

Masalah teknis Mail.ru Group 2019

Proyek ForkMe adalah platform untuk menonton video interaktif, tempat Anda dapat membuat video sendiri dan menunjukkannya kepada teman-teman Anda. Mengapa kita membutuhkan video interaktif jika ada yang biasa?

Plot video yang non-linier dan kemampuan untuk memilih kelanjutannya memungkinkan pemirsa untuk terlibat, dan pembuat konten akan dapat menampilkan cerita unik, yang plotnya akan dipengaruhi oleh pengguna. Selain itu, pembuat konten, dengan mempelajari statistik konversi video, akan dapat memahami apa yang paling menarik minat penonton dan membuat materi menjadi lebih menarik.

Saat mengembangkan proyek, mereka terinspirasi oleh film interaktif Bandersnatch dari Netflix, yang mendapat banyak penayangan dan ulasan bagus. Ketika MVP sudah ditulis, muncul berita bahwa Youtube berencana meluncurkan platform untuk serial interaktif, yang sekali lagi menegaskan popularitas arah ini.

MVP meliputi: pemutar interaktif, pembuat video, pencarian berdasarkan konten dan tag, koleksi video, komentar, penayangan, peringkat, saluran, dan profil pengguna.

Masalah teknis Mail.ru Group 2019

Tumpukan teknologi yang digunakan dalam proyek:

Masalah teknis Mail.ru Group 2019

Bagaimana rencana pengembangan proyek:

  • kumpulan statistik dan infografis tentang transisi ke video;
  • pemberitahuan dan pesan pribadi untuk pengguna situs;
  • versi untuk Android dan iOS.

Setelah ini kami berencana untuk menambahkan:

  • membuat cerita video dari ponsel Anda;
  • mengedit fragmen video yang diunduh (misalnya pemangkasan);
  • pembuatan dan peluncuran iklan interaktif di pemutar.

Tim proyek: Maxim Morev (pengembang fullstack, mengerjakan arsitektur proyek) dan Roman Maslov (pengembang fullstack, mengerjakan desain proyek).

On-Line-On-Board

Masalah teknis Mail.ru Group 2019

Masalah teknis Mail.ru Group 2019

Saat ini, orang tua menaruh perhatian besar terhadap perkembangan mental anak-anaknya, dan anak-anak tertarik pada permainan intelektual. Oleh karena itu, catur kembali populer. Dan meskipun catur secara umum cukup populer, menemukan lawan tetap untuk permainan tersebut merupakan masalah. Oleh karena itu, banyak orang yang menggunakan layanan catur online, padahal banyak pemain yang lebih suka bermain β€œlangsung” dengan bidak asli. Namun ketika bermain catur, seseorang mengeluarkan banyak tenaga mental dan menjadi lelah, dan kelelahan tersebut ditambah dengan dampak negatif dari duduk di depan komputer atau smartphone. Akibatnya, otak menjadi kelebihan beban setelah dua pertandingan saja.

Semua faktor ini mendorong penulis pada ide proyek On-Line-On-Board, yang terdiri dari tiga bagian: papan catur fisik, aplikasi desktop, dan layanan web. Papan adalah lapangan catur biasa yang mengenali posisi bidak dan, dengan bantuan indikasi cahaya, menunjukkan gerakan lawan. Papan terhubung melalui USB ke PC dan berkomunikasi dengan aplikasi desktop. Dalam mode pelatihan (dan untuk anak-anak), kemungkinan gerakan Anda disorot.

Aplikasi ini mengambil alih fungsi dasar pengelolaan papan, yang memungkinkan Anda mengurangi biayanya secara signifikan dan membawa implementasi sebagian besar fungsi ke tingkat perangkat lunak. Aplikasi berkomunikasi dengan layanan web yang nilai utamanya adalah pembaruan dinamis.

Skenario utama penggunaan produk: satu orang bermain di layanan, yang kedua di papan fisik yang terhubung ke layanan. Artinya, pelayanan mempunyai fungsi komunikatif.

Tim proyek: Daniil Tuchin, Anton Dmitriev, Sasha Kuznetsov.

Anda dapat membaca lebih lanjut tentang proyek pendidikan kami di link ini. Dan kunjungi saluran ini lebih sering aliran teknologi, video pendidikan baru tentang pemrograman, pengembangan, dan disiplin ilmu lainnya muncul secara berkala di sana.

Sumber: www.habr.com

Tambah komentar