Linux Performance Engineer for Ciklum Client (Remote basis)

Category

Other IT

Description

On behalf of our Client, Ciklum is looking for a Linux Performance Engineer  to join our Client’s team.

We are looking for a proficient performance engineer to analyze hardware configuration in our data centers. A system Linux administrator with relevant experience may also be a good match.

Work conditions:

  • Space for innovation
  • Great, international team
  • Dynamic and international work environment
  • Great creative leeway and high autonomy
  • Space for exchange of opinions
  • Casual way of communication
  • Flexible working times
  • Remote basis, part-time job

Client — is an American company, which was founded 25 years ago by a handful of technical and financial experts drawn from some of the largest and most prestigious financial institutions.

Responsibilities

  • Provide technical assistance to improve system performance, capacity, reliability and scalability.
  • Perform root cause analysis of performance issues and suggest corrective actions.
  • Evaluate system performances and recommend improvements.
  • Generate periodic performance reports for management review.

Requirements

  • Modern performance analysis and tuning: terminology, concepts, models, methods and techniques
  • Dynamic tracing techniques and tools, including examples of DTrace, SystemTap and performance
  • Kernel internals: uncovering what the OS is doing
  • Using system observability tools, interfaces, and frameworks
  • Understanding and monitoring application performance
  • Optimizing CPUs: processors, cores, hardware threads, caches, interconnects, and kernel scheduling
  • Memory optimization: virtual memory, paging, swapping, memory architectures, busses, address spaces, and allocators
  • File system I/O, including caching
  • Storage devices/controllers, disk I/O workloads, RAID, and kernel I/O
  • Network-related performance issues: protocols, sockets, interfaces, and physical connections
  • Performance implications of OS and hardware-based virtualization
  • Benchmarking: getting accurate results and avoiding common mistakes

Skills:

  • Deep understanding of the Linux kernel including the virtual memory, VFS, IPC, network, CPU scheduling system, memory management, disk and network I/O, etc
  • Demonstrated experience with performance tuning including tradeoffs between low latency and throughput, hardware and BIOS-related tuning, and proper employment of NUMA
  • Understanding of interrupt handling, IRQ and IRQ affinity, processor sets/cgroups
  • Knowledge of tracing frameworks like bcc/BPF, perf, or DTrace
  • Experience in diagnosing performance issues using methodologies like the USE method
  • Familiarity with web servers, SQL databases, caching, and the kernel networking stack

Desirable

  • Proficiency in reading and debugging C source code to troubleshoot kernel-space issues
  • Python or Go knowledge

What's in it for you

  • Unique working environment where you communicate and work directly with client
  • Variety of knowledge sharing, training and self-development opportunities
  • Competitive salary