Sobes.tech

Data Analyst

How to filter a DataFrame by a single condition?

Middle
218

Were the features purely based on time series? Did you try using other data sources, such as news or other cryptocurrencies?

213

Have you worked with Power BI and Apache Superset — which do you think is better?

211

Python task: build user sessions based on events (new session if gap > 30 minutes) and calculate daily aggregates.

211

What aspects do you want to focus on when looking for a new job? What past experiences do you want to close on at a new place?

209

Tell me more about your interest in AI agents and automation — specifically about your experience participating in an AI chatbot project: how was communication built with the client and developers?

Junior
209

How well does the company's offer (range 220-250k) match your salary expectations?

208

Behavioral question: a manager recommended a model, but it shows poor results. What will you do?

207

What methods did you use to solve the test assignment? What main functions did you use? Did you use AI?

207

// We have a method for retrieving product information, this method is called very often // are there any problems in this code and how to fix them? PostgreSQL database func (r *ProductRepository) GetProductDetails(ctx context.Context, productIDs []int) []Product { products := make([]Product, 0, len(productIDs)) for _, id := range productIDs { go func(id int) { var p Product query := "SELECT name, price, description FROM products WHERE id = $1" err := r.db.QueryRowContext(ctx, query, id).Scan(&p.Name, &p.Price, &p.Desc) if err != nil { r.logger.Error("error get product", "err", err) return } products = append(products, p) }(id) } return products }

Principal
205

How could you get involved in supporting and modernizing the capacity model, considering the manager's explanation of its structure?

Middle+
204

Is an UPDATE transaction itself? Is an explicit transaction needed for a single atomic UPDATE?

Principal
204

Would the proposed solution work for SQLite?

202

Why did customer refunds jump by 50%? What operational risks are possible here?

200

Once, a Yandex Ads anti-fraud intern joined the team. While the fraudster group was active, which simulated traffic on their sites through bot visits, and thus received money for ad impressions by bots, the intern's task was to find all such fraudulent sites with fake traffic. Interestingly, all traffic on these sites was generated with IP substitution, making it seem as if a bot was visiting from city A, but in reality, the device was in a completely different location. A lot of time passed, and the intern tried to cover this entire fraud group, even managing to catch some sites in parts. But the whole network could not be caught. After some time, he noticed a news report: in city A, on 02.08.2025, mobile internet was completely absent. However, wired (home) internet continued to work. Given this, how can the intern find all fake sites? You have logs of sites in a table format for the period from 30.07.2025 to 10.08.2025: timestamp | site_id | city_id Each record corresponds to a visit to a site by one device. It is known that bot traffic changes significantly less than real traffic per day. Your task is to find all sites whose traffic was mainly composed of bots that faked their region to city A. Note The table containing the data is called logs. Example of a table record: timestamp | site_id | city_id [phone]:13:53 | 6e84d9b71ca44aea | A

199

SQL: list employees who are older than their manager (table employees with fields employee_id, department_id, is_chief, birthday).

195

// When updating an order, we need to send order data to several services (third-party) // the number of services is growing (could be thousands+) // we wrote the code, initially everything was fine, but over time our service started consuming a lot of resources // We need to optimize this code to work efficiently with a large number of services func (s *orderService) SendOrder(ctx context.Context, hosts []string, order Order) { for i := 0; i < len(hosts); i++ { go func() { // Imagine this is a long network call response, err := s.httpClient.Send(ctx, hosts[i], order) if err != nil { s.logger.Error(ctx, "failed to send", err) return } s.logger.Info(ctx, "success", response) }() } }

Principal
195
/15