Software Engineer

Software EngineerG17Medium

Yandex is looking for a talented Software Engineer at the G17 level to join our dynamic team. This role involves designing, developing, and maintaining high-quality software solutions that power our innovative products and services. We are seeking individuals with a strong foundation in computer science principles, excellent problem-solving skills, and a passion for building scalable and efficient systems.

Rounds·4

Timeline·~14d

Experience·2 - 5 yrs

Comp band·US$85000 - US$120000

Interview time·180 min

Evaluation

What they measure.

  • Problem-solving abilities
  • Algorithmic thinking
  • Data structures knowledge
  • Coding proficiency
  • System design capabilities
  • Communication skills
  • Teamwork and collaboration
  • Adaptability and learning agility

Preparation

How to prepare.

Tips

  1. Review fundamental data structures and algorithms (arrays, linked lists, trees, graphs, hash tables, sorting, searching).
  2. Practice coding problems on platforms like LeetCode, HackerRank, or Codewars, focusing on medium-difficulty problems.
  3. Study system design principles, including scalability, reliability, and performance optimization.
  4. Prepare to discuss your past projects in detail, focusing on your contributions, challenges, and learnings.
  5. Understand common behavioral interview questions and prepare STAR method (Situation, Task, Action, Result) answers.
  6. Research Yandex's products, services, and company culture.
  7. Brush up on your chosen programming language's core concepts and best practices.

Study plan

Fig · Study plan — 05 phases

01 / 05
01

Phase 01 of 05

Data Structures and Algorithms Fundamentals

Weeks 1-2: Data Structures & Basic Algorithms. Practice 10-15 easy/medium problems per topic.

Weeks 1-2: Focus on core data structures (arrays, linked lists, stacks, queues, trees, graphs, hash maps) and their common operations. Practice basic algorithms like sorting (quicksort, mergesort) and searching (binary search). Solve 10-15 easy and medium problems per data structure/algorithm type.

Questions

Commonly asked.

  • Given an array of integers, find the contiguous subarray with the largest sum.
  • Design a URL shortening service like bit.ly.
  • Explain the difference between a process and a thread.
  • How would you design a system to count the number of unique visitors to a website?
  • Tell me about a time you disagreed with a teammate. How did you handle it?
  • What are the trade-offs between SQL and NoSQL databases?
  • Implement a function to reverse a linked list.
  • Describe a situation where you had to learn a new technology quickly. How did you approach it?
  • How would you optimize a slow database query?
  • What are your strengths and weaknesses as a software engineer?

Locations

Regional differences.

Fig · Regions — 02 locations

01 / 02

Location

Moscow

Interview focus

Understanding of the local market and user behavior.Adaptability to specific Russian technological trends.Experience with projects relevant to the CIS region.

Common questions

  • Describe a challenging project you worked on in Moscow and how you overcame obstacles.
  • How do you approach system design for a large-scale application in the Russian market?
  • What are your thoughts on the current tech landscape in Russia and Yandex's role in it?

Tips

  • Familiarize yourself with Yandex's products and services popular in Russia.
  • Be prepared to discuss your experience with technologies commonly used in the Russian tech industry.
  • Highlight any contributions to open-source projects or local tech communities.

Rounds

Round-by-round.

Expand a step for evaluation criteria, sample questions, and prep notes.

DSA

Coding questions at Yandex.

Frequently reported on Yandex loops

Other guides

More at Yandex.