ปัญหาทางเทคนิคของ Mail.ru Group 2019

ปัญหาทางเทคนิคของ Mail.ru Group 2019

เมื่อปลายเดือนพฤษภาคม ผู้สำเร็จการศึกษาของเราจาก Technopark (Bauman MSTU), Technotrack (MIPT), Technosphere (Lomonosov Moscow State University) และ Technopolis (Peter the Great St. Petersburg Polytechnic University) ได้ปกป้องโครงการประกาศนียบัตรของพวกเขา มีการจัดสรรเวลาสามเดือนสำหรับการทำงานและคนเหล่านี้ลงทุนกับความรู้และทักษะที่ได้รับจากการศึกษาสองปี

รวมมีโครงการด้านการป้องกันประเทศรวม 13 โครงการ แก้ไขปัญหาต่างๆ ในอุตสาหกรรมต่างๆ ตัวอย่างเช่น:

  • ที่เก็บข้อมูลบนคลาวด์พร้อมการเข้ารหัสไฟล์เข้ารหัส
  • แพลตฟอร์มสำหรับสร้างวิดีโอเชิงโต้ตอบ (ที่มีตอนจบต่างกัน)
  • กระดานอัจฉริยะสำหรับเล่นหมากรุกจริงผ่านเครือข่าย
  • สถาปัตยกรรมเพื่อการดึงบทความทางการแพทย์อย่างชาญฉลาด
  • ซอฟต์แวร์สำหรับสอนเด็กประถมถึงพื้นฐานของอัลกอริทึม

ตลอดจนโครงการจากหน่วยธุรกิจ:

  • ระบบ CRM สำหรับผู้ส่งสาร TamTam;
  • บริการเว็บสำหรับค้นหาภาพถ่ายเฉพาะเรื่องบนแผนที่สำหรับ Odnoklassniki
  • บริการระบุพิกัดที่อยู่สำหรับ MAPS.ME

วันนี้เราจะมาเล่ารายละเอียดเพิ่มเติมเกี่ยวกับห้าโครงการของผู้สำเร็จการศึกษาของเรา

ค้นหาบทความทางการแพทย์อย่างชาญฉลาด

ปัญหาทางเทคนิคของ Mail.ru Group 2019

มีหลายสาขาในสาขาวิทยาศาสตร์ซึ่งในแต่ละงานวิจัยมีบทความจำนวนมากตีพิมพ์ในวารสารต่างๆ ได้แก่เทคโนโลยีสารสนเทศ ฟิสิกส์ คณิตศาสตร์ ชีววิทยา การแพทย์ และอื่นๆ อีกมากมาย

ผู้เขียน โครงการ ตัดสินใจที่จะมุ่งเน้นไปที่สาขาการแพทย์ บทความเกี่ยวกับหัวข้อทางการแพทย์เกือบทั้งหมดถูกรวบรวมไว้ในพอร์ทัล PubMed พอร์ทัลจัดเตรียมการค้นหาของตนเอง อย่างไรก็ตามความสามารถของมันมีจำกัดมาก ดังนั้นพวกเขาจึงปรับปรุงระบบการค้นหาเพิ่มการสนับสนุนสำหรับข้อความค้นหาที่ยาวและความสามารถในการปรับแต่งข้อความค้นหาโดยใช้การสร้างแบบจำลองหัวข้อ

ปัญหาทางเทคนิคของ Mail.ru Group 2019
SERP ประกอบด้วยรายการเอกสารที่ได้รับการจัดอันดับพร้อมหัวข้อที่กำหนดไว้ และคำและคำศัพท์ที่เกี่ยวข้องกับหัวข้อเหล่านี้จะถูกเน้นโดยใช้การสร้างแบบจำลองหัวข้อที่น่าจะเป็น ผู้ใช้สามารถคลิกที่คำที่ไฮไลต์เพื่อจำกัดคำค้นหาให้แคบลง

ปัญหาทางเทคนิคของ Mail.ru Group 2019
เพื่อให้การค้นหาผ่านฐานข้อมูล PubMed ขนาดใหญ่รวดเร็ว ผู้เขียนได้เขียนเครื่องมือค้นหาของตนเองซึ่งสามารถรวมเข้ากับโครงสร้างพื้นฐานใดๆ ได้อย่างง่ายดาย

การค้นหาจะดำเนินการในสามขั้นตอน:

  1. เอกสารผู้สมัครจะถูกเลือกโดยใช้ดัชนีย้อนกลับ
  2. ผู้สมัครจะได้รับการจัดอันดับโดยใช้อัลกอริธึม BM25F ซึ่งจะพิจารณาช่องต่างๆ ในเอกสารระหว่างการค้นหา ดังนั้นคำในชื่อเรื่องจึงมีน้ำหนักมากกว่าคำในบทคัดย่อ
  3. ระบบแคชยังใช้เพื่อเพิ่มความเร็วในการประมวลผลคำขอที่ใช้บ่อยอีกด้วย

ปัญหาทางเทคนิคของ Mail.ru Group 2019

สถาปัตยกรรมไมโครเซอร์วิส:

ปัญหาทางเทคนิคของ Mail.ru Group 2019
โดยพื้นฐานแล้ว ข้อมูลข้อความที่มีโครงสร้างจะถูกถ่ายโอนระหว่างบริการต่างๆ สำหรับความเร็วในการถ่ายโอนสูงจะใช้ GRPC ซึ่งเป็นเฟรมเวิร์กสำหรับการเชื่อมต่อโมดูลในสถาปัตยกรรมไมโครเซอร์วิส การทำให้เป็นอนุกรมข้อมูลยังใช้โดยใช้รูปแบบการแลกเปลี่ยนข้อความ Protobuf

ระบบประกอบด้วยองค์ประกอบใดบ้าง:

  • เซิร์ฟเวอร์สำหรับประมวลผลคำขอของผู้ใช้ขาเข้าบน Node.js
  • โหลดคำขอสมดุลโดยใช้พร็อกซีเซิร์ฟเวอร์ nginx
  • เซิร์ฟเวอร์ Flask ใช้งาน REST API และรับคำขอที่ส่งต่อจาก Node.js
  • ข้อมูลดิบและประมวลผลทั้งหมด รวมถึงข้อมูลการสืบค้น จะถูกจัดเก็บไว้ใน MongoDB
  • คำขอทั้งหมดสำหรับผลลัพธ์ที่เกี่ยวข้องสำหรับการจัดธีมเอกสารไปที่ RabbitMQ

ตัวอย่างผลการค้นหา:

ปัญหาทางเทคนิคของ Mail.ru Group 2019

สิ่งที่เราวางแผนจะทำต่อไป:

  • คำแนะนำเมื่อรวบรวมบทวิจารณ์ในหัวข้อที่กำหนด (ระบุหัวข้อที่สำคัญในเอกสารและค้นหาผ่านชุดย่อยของเอกสาร)
  • ค้นหาไฟล์ PDF
  • การแบ่งส่วนข้อความความหมาย
  • ติดตามหัวข้อและแนวโน้มในช่วงเวลาต่างๆ

ทีมงานโครงการ: Fedor Petryaykin, Vladislav Dorozhinsky, Maxim Nakhodnov, Maxim Filin

บันทึกบล็อก

ปัญหาทางเทคนิคของ Mail.ru Group 2019

ปัจจุบันนี้ ในการสอนการเขียนโปรแกรมและวิทยาการคอมพิวเตอร์ เด็กในวัยประถมศึกษา (ป.5-7) มีปัญหาในการเรียนรู้เนื้อหานี้ นอกจากนี้ หากนักเรียนต้องการทำงานที่บ้านให้เสร็จ จะต้องติดตั้งซอฟต์แวร์เพิ่มเติมบนคอมพิวเตอร์ ครูต้องตรวจสอบวิธีแก้ปัญหาที่คล้ายกันจำนวนมาก และในกรณีของการเรียนรู้ทางไกล ครูยังต้องพัฒนาวิธีการรับงานจากนักเรียนด้วย

ผู้เขียนโครงการ Block Log ได้ข้อสรุปว่า เมื่อสอนเด็กวัยประถมศึกษาถึงพื้นฐานของอัลกอริทึม ไม่ควรเน้นที่การจดจำคำสั่งภาษาการเขียนโปรแกรม แต่เน้นที่การสร้างแผนภาพอัลกอริทึม ซึ่งจะช่วยให้นักเรียนใช้เวลาและความพยายามในการออกแบบอัลกอริทึม แทนที่จะพิมพ์โครงสร้างวากยสัมพันธ์ที่ยุ่งยาก

เวที บันทึกบล็อก ช่วยให้คุณ:

  1. สร้างและแก้ไขผังงาน
  2. เรียกใช้ผังงานที่สร้างขึ้นและดูผลงาน (ข้อมูลที่ส่งออก)
  3. บันทึกและโหลดโครงการที่สร้างขึ้น
  4. วาดภาพแรสเตอร์ (สร้างภาพตามอัลกอริทึมที่สร้างโดยเด็ก)
  5. รับข้อมูลเกี่ยวกับความซับซ้อนของอัลกอริทึมที่สร้างขึ้น (ขึ้นอยู่กับจำนวนการดำเนินการที่ดำเนินการในอัลกอริทึม)

คาดว่าจะมีการแบ่งบทบาทเป็นครูและนักเรียน ผู้ใช้คนใดได้รับสถานะนักศึกษา หากต้องการรับสถานะครู คุณต้องติดต่อผู้ดูแลระบบ ครูไม่เพียงแต่สามารถป้อนคำอธิบายและเงื่อนไขของปัญหาเท่านั้น แต่ยังสร้างการทดสอบอัตโนมัติที่จะเปิดตัวโดยอัตโนมัติเมื่อนักเรียนส่งวิธีแก้ไขปัญหาเข้าสู่ระบบ

ตัวแก้ไขบันทึกบล็อกเบราว์เซอร์:

ปัญหาทางเทคนิคของ Mail.ru Group 2019

หลังจากแก้ไขปัญหาแล้ว นักเรียนสามารถดาวน์โหลดวิธีแก้ปัญหาและดูผลลัพธ์ได้:

ปัญหาทางเทคนิคของ Mail.ru Group 2019

แพลตฟอร์มดังกล่าวประกอบด้วยแอปพลิเคชันส่วนหน้าใน Vue.js และแอปพลิเคชันส่วนหลังใน Ruby on Rails PostgreSQL ใช้เป็นฐานข้อมูล เพื่อให้การปรับใช้ง่ายขึ้น ส่วนประกอบของระบบทั้งหมดจะถูกบรรจุในคอนเทนเนอร์ Docker และประกอบโดยใช้ Docker Compose Block Log เวอร์ชันเดสก์ท็อปนั้นใช้เฟรมเวิร์กอิเล็กตรอน Webpack ถูกใช้เพื่อสร้างโค้ด JavaScript

ทีมงานโครงการ: Alexander Barulev, Maxim Kolotovkin, Kirill Kucherov

ระบบ CRM สำหรับผู้ส่งสาร TamTam

ปัญหาทางเทคนิคของ Mail.ru Group 2019

CRM เป็นเครื่องมือสำหรับการโต้ตอบที่สะดวกระหว่างธุรกิจและผู้ใช้ TamTam มีการใช้งานฟังก์ชันต่อไปนี้:

  • ตัวสร้างบอทที่ให้คุณสร้างบอทได้โดยไม่ต้องมีทักษะการเขียนโปรแกรม ภายในไม่กี่นาที คุณจะได้รับบอตที่ทำงานได้อย่างเต็มรูปแบบ ซึ่งไม่เพียงแต่แสดงข้อมูลบางส่วนให้ผู้ใช้เห็นเท่านั้น แต่ยังรวบรวมข้อมูลอีกด้วย รวมถึง ไฟล์ที่ผู้ดูแลระบบสามารถดูได้ในภายหลัง
  • อาร์เอสเอส คุณสามารถเชื่อมต่อ RSS กับช่องใดก็ได้ได้อย่างง่ายดาย
  • การโพสต์ล่าช้า ช่วยให้คุณสามารถส่งและลบข้อความตามเวลาที่ตั้งไว้

ทีมงานยังมีส่วนร่วมในการทดสอบ Bot API ด้วยการสร้างบอทที่เขียนขึ้นเองหลายตัว เช่น บอทสำหรับ World Cup of Hockey ปี 2019 บอทสำหรับการลงทะเบียน/การอนุญาตในบริการของเรา และบอทสำหรับ CI/CD

โครงสร้างพื้นฐานของโซลูชัน:

  • เซิร์ฟเวอร์การจัดการมีระบบตรวจสอบสำหรับแต่ละเซิร์ฟเวอร์และแต่ละคอนเทนเนอร์ Docker เพื่อให้สามารถตรวจจับปัญหาและแก้ไขได้อย่างรวดเร็วและสะดวก ดูตัวชี้วัดและสถิติการใช้งานต่างๆ นอกจากนี้ยังมีระบบการจัดการการกำหนดค่าระยะไกลของแอปพลิเคชันของเรา
  • เซิร์ฟเวอร์ชั่วคราวประกอบด้วยแอปพลิเคชันเวอร์ชันปัจจุบันของเรา ซึ่งพร้อมสำหรับการทดสอบทั่วไปโดยทีมพัฒนา
  • เซิร์ฟเวอร์การจัดการและการจัดเตรียมพร้อมใช้งานผ่าน VPN สำหรับนักพัฒนาเท่านั้น และเซิร์ฟเวอร์ที่ใช้งานจริงจะมีแอปพลิเคชันเวอร์ชันที่วางจำหน่าย มันถูกแยกออกจากมือของนักพัฒนาและใช้ได้เฉพาะกับผู้ใช้ปลายทางเท่านั้น
  • ระบบ CI/CD ถูกนำมาใช้โดยใช้ Github และ Travis การแจ้งเตือนโดยใช้บอทที่กำหนดเองใน TamTam

ปัญหาทางเทคนิคของ Mail.ru Group 2019

สถาปัตยกรรมแอปพลิเคชันเป็นโซลูชันแบบโมดูลาร์ แอปพลิเคชัน ฐานข้อมูล ตัวจัดการการกำหนดค่า และการตรวจสอบจะเปิดตัวในคอนเทนเนอร์ Docker ที่แยกจากกัน ซึ่งช่วยให้คุณสามารถสรุปจากสภาพแวดล้อมการเปิดใช้งาน เปลี่ยนแปลงหรือรีสตาร์ทคอนเทนเนอร์ที่แยกจากกัน การสร้างโทโพโลยีเครือข่ายและการจัดการคอนเทนเนอร์ทำได้โดยใช้ Docker Compose

ปัญหาทางเทคนิคของ Mail.ru Group 2019

ทีมงานโครงการ: Alexey Antufiev, Egor Gorbatov, Alexey Kotelevsky

ฟอร์คมี

ปัญหาทางเทคนิคของ Mail.ru Group 2019

โครงการ ForkMe เป็นแพลตฟอร์มสำหรับการดูวิดีโอเชิงโต้ตอบ ซึ่งคุณสามารถสร้างวิดีโอของคุณเองและแสดงให้เพื่อนของคุณเห็น เหตุใดเราจึงต้องมีวิดีโอเชิงโต้ตอบหากมีวิดีโอปกติ

โครงเรื่องที่ไม่เป็นเชิงเส้นของวิดีโอและความสามารถในการเลือกความต่อเนื่องได้ด้วยตนเองทำให้ผู้ชมมีส่วนร่วม และผู้สร้างเนื้อหาจะสามารถแสดงเรื่องราวที่ไม่เหมือนใคร ซึ่งโครงเรื่องจะได้รับอิทธิพลจากผู้ใช้ นอกจากนี้ ผู้สร้างเนื้อหาโดยการศึกษาสถิติการแปลงวิดีโอ จะสามารถเข้าใจสิ่งที่ผู้ชมสนใจมากที่สุด และทำให้เนื้อหาน่าสนใจยิ่งขึ้น

ตอนที่พัฒนาโปรเจ็กต์นี้ พวกเขาได้รับแรงบันดาลใจจากภาพยนตร์อินเทอร์แอกทีฟ Bandersnatch จาก Netflix ซึ่งได้รับการชมและบทวิจารณ์ที่ดีมากมาย เมื่อเขียน MVP แล้ว มีข่าวว่า Youtube กำลังวางแผนที่จะเปิดตัวแพลตฟอร์มสำหรับซีรีส์เชิงโต้ตอบซึ่งยืนยันความนิยมในทิศทางนี้อีกครั้ง

MVP ประกอบด้วย: เครื่องเล่นแบบโต้ตอบ ตัวสร้างวิดีโอ ค้นหาตามเนื้อหาและแท็ก คอลเลกชันวิดีโอ ความคิดเห็น การดู การให้คะแนน ช่องและโปรไฟล์ผู้ใช้

ปัญหาทางเทคนิคของ Mail.ru Group 2019

กองเทคโนโลยีที่ใช้ในโครงการ:

ปัญหาทางเทคนิคของ Mail.ru Group 2019

มีการวางแผนพัฒนาโครงการอย่างไร:

  • การรวบรวมสถิติและอินโฟกราฟิกเกี่ยวกับการเปลี่ยนไปใช้วิดีโอ
  • การแจ้งเตือนและข้อความส่วนตัวสำหรับผู้ใช้เว็บไซต์
  • เวอร์ชันสำหรับ Android และ iOS

หลังจากนี้เราวางแผนที่จะเพิ่ม:

  • การสร้างเรื่องราววิดีโอจากโทรศัพท์ของคุณ
  • การแก้ไขส่วนของวิดีโอที่ดาวน์โหลดมา (เช่น การตัดแต่ง)
  • การสร้างและการเปิดตัวโฆษณาเชิงโต้ตอบในเครื่องเล่น

ทีมงานโครงการ: Maxim Morev (นักพัฒนา fullstack ทำงานเกี่ยวกับสถาปัตยกรรมโครงการ) และ Roman Maslov (นักพัฒนา fullstack ทำงานเกี่ยวกับการออกแบบโครงการ)

ออนไลน์บนกระดาน

ปัญหาทางเทคนิคของ Mail.ru Group 2019

ปัญหาทางเทคนิคของ Mail.ru Group 2019

ปัจจุบันนี้ พ่อแม่ให้ความสนใจอย่างมากต่อพัฒนาการทางจิตของลูก และลูกๆ ก็สนใจในเกมทางปัญญา หมากรุกจึงได้รับความนิยมอีกครั้ง และถึงแม้ว่าหมากรุกโดยทั่วไปจะค่อนข้างได้รับความนิยม แต่การค้นหาคู่ต่อสู้ปกติสำหรับเกมก็เป็นปัญหา ดังนั้นผู้คนจำนวนมากจึงใช้บริการหมากรุกออนไลน์ แม้ว่าผู้เล่นหลายคนจะชอบเล่น "สด" ด้วยตัวหมากจริงก็ตาม อย่างไรก็ตามเมื่อเล่นหมากรุกคน ๆ หนึ่งใช้ความพยายามทางจิตอย่างมากและเหนื่อยล้า และความเหนื่อยล้านี้เสริมด้วยผลกระทบด้านลบจากการนั่งหน้าคอมพิวเตอร์หรือสมาร์ทโฟน ส่งผลให้สมองทำงานหนักเกินไปหลังจากผ่านไปเพียงสองเกม

ปัจจัยทั้งหมดเหล่านี้ผลักดันให้ผู้เขียนเกิดแนวคิดเกี่ยวกับโครงการ On-Line-On-Board ซึ่งประกอบด้วยสามส่วน: กระดานหมากรุกจริง แอปพลิเคชันเดสก์ท็อป และบริการเว็บ กระดานเป็นสนามหมากรุกปกติซึ่งจะจดจำตำแหน่งของหมาก และด้วยความช่วยเหลือของไฟสัญญาณ บ่งชี้การเคลื่อนไหวของคู่ต่อสู้ บอร์ดเชื่อมต่อผ่าน USB เข้ากับพีซีและสื่อสารกับแอปพลิเคชันเดสก์ท็อป ในโหมดฝึกซ้อม (และสำหรับเด็ก) การเคลื่อนไหวที่เป็นไปได้ของคุณจะถูกเน้นไว้

แอปพลิเคชั่นเข้าควบคุมฟังก์ชั่นพื้นฐานของการจัดการบอร์ดซึ่งช่วยให้คุณลดต้นทุนได้อย่างมากและนำการใช้งานฟังก์ชั่นส่วนใหญ่มาสู่ระดับซอฟต์แวร์ แอปพลิเคชันสื่อสารกับบริการเว็บที่มีค่าหลักคือการอัปเดตแบบไดนามิก

สถานการณ์หลักในการใช้ผลิตภัณฑ์: คนหนึ่งเล่นในบริการ คนที่สองเล่นบนกระดานจริงที่เชื่อมต่อกับบริการ นั่นคือบริการจะทำหน้าที่สื่อสาร

ทีมงานโครงการ: Daniil Tuchin, Anton Dmitriev, Sasha Kuznetsov

คุณสามารถอ่านเพิ่มเติมเกี่ยวกับโครงการด้านการศึกษาของเราได้ที่ การเชื่อมโยงนี้. และเยี่ยมชมช่องให้บ่อยขึ้น เทคโนสตรีมวิดีโอการศึกษาใหม่ๆ เกี่ยวกับการเขียนโปรแกรม การพัฒนา และสาขาวิชาอื่นๆ ปรากฏอยู่ที่นั่นเป็นประจำ

ที่มา: will.com

เพิ่มความคิดเห็น