generic-logo-colour-white-chaos-camp.svg

Join. Learn. Grow.

Free academy for junior developers.
Apply

Meet the Chaos Camp 2025

Are you eager to extend your knowledge of C++ algorithms and data structures? Curious about the secrets of ray tracing? Ready to kick-start your career in computer graphics programming?

Chaos Camp is your opportunity to learn from top experts, find out what’s behind-the-scenes of visualization technologies, and be invited for an internship at Chaos. 

The free, intensive online academy is open to applicants aged 18+ who are based in Bulgaria, Czechia, or Germany.  

If you are a graduating student or a junior developer with a good understanding of algorithms and programming and a strong drive for computer graphics development, apply for free enrollment in Chaos Camp by April 30, 2025. 

Chaos Camp in brief

  • Online training in English on algorithms and data structures for C++, computer graphics programming and ray tracing
  • 21 weeks of intensive training divided into Spring and Autumn sessions (Part I: May - July, Part II: September - November)
  • Sessions take place on week evenings to fit your schedule
  • Practical assignments in algorithms and data structures and a chance to develop your own ray tracer
  • Personalized feedback on your projects and a dedicated Discord channel to network with your trainers and peers
  • Extra training in engineering habits and business coaching
  • A Certificate of Completion (for participants who attend 80% of lectures and submit 80% of assignments)
  • Opportunity to join Chaos as an intern – top-performing participants in Part I will be interviewed to join the Chaos Internship Program

Take the first step toward a career in computer graphics programming. 

The academy is organized in partnership with MNKnowledge, a trusted provider of educational services in information technology. 

How to apply?

icon-frame-black-approval.svg
April 16, 2025

Find out more about Chaos Camp and meet the lecturers.
Register now >

icon-frame-black-approval.svg
By May 9, 2025

Complete your entry test and have a short interview with our recruitment team.
Only shortlisted applicants will be invited.

icon-frame-black-approval.svg
By May 16, 2025

If you did well at the interview, expect your invitation to join Chaos Camp.

icon-frame-black-approval.svg
On May 20, 2025

Join the Chaos Camp training sessions.
Approved candidates will sign a Participation Agreement.

icon-frame-black-approval.svg
July 2025

The top performers will be invited for an interview to join the Chaos Internship Program.

Chaos Camp is the fastest lane to start your engineering career at Chaos.

Matthias Bruns, Software Developer, Chaos
Danny Grigorov, Software Developer, Chaos

Matthias Bruns

Software Developer, Chaos

 “The most impactful takeaway from Chaos Camp was learning how to translate theoretical knowledge into a robust, real-world project. The instructors were fantastic at guiding us to build code that's not just functional but also futureproof and scalable. The camp allowed participants to develop a project that demonstrated their skills and helped me land a job at Chaos. While I really enjoyed working on the projects, connecting with other passionate people was a highlight. I’d highly recommend it to anyone with a programming foundation who's eager to dive into Ray Tracing and Computer Graphics.” 

Matthias_Bruns-540x540.jpg
Matthias Bruns, Software Developer, Chaos
Danny Grigorov, Software Developer, Chaos

Chaos Camp 2025 Curriculum

Algorithms and Data Structures for C++

Part 1: May - June

  • Complexity analysis (Big O notation) to have it in mind.
  • A look at computer architectures. Memory structure. Access patterns and according data arrangement.
  • Data types and their behavior. Math algorithms. Dealing with the floating point numbers. Precision in floating point calculations. Specifics.
  • Recursion. Back tracking. Memoization.
  • Searching - linear, binary, interpolation and parallel.
  • Sorting algorithms. Types, specifics. Generic algorithms: selection sort, insertion sort, bubble sort, shaker sort, shell sort, merge sort, quick sort.
  • Special algorithms: counting sort, radix sort.
  • Non-linear data structures. Trees, DFS and BFS. Binary ordered tree.  

Part 2: September - October

  • Introduction to parallel calculations and algorithms.  
  • Advanced parallel calculations and algorithms and synchronisation.
  • Geometry / BB / Geometry algorithms.
  • When we run out of memory - external sorting and searching.
  • Hash functions, hashing, hash tables. 
  • Special linear data structures. Tiered vector, skip list.
  • Statistical and probabilistic algorithms. Randomized algorithms.
  • How to fix the broken tree? Balanced trees. DSW algorithm for balancing.
  • Self-balancing trees. Red-Black tree. AVL tree.
  • Shared access to the tree. Parallel building and searching in a BST. B-trees.
  • Interval trees. Dynamic Order Statistics.
  • Binary Heap, Heap sort. And other heaps.
  • GPU-specific content (Architecture, Execution Model/Divergence!, Algorithms)
  • More on probabilities and statistics. Monte Carlo and Las Vegas algorithms.
  • Optimization algorithms (Genetic algorithms, simulated annealing, Metropolis-Hastings, etc)
  • High performance oriented development.  
  • Final project demo.

Part 1: Introduction, June - July

  • Introduction: High-level introduction to Computer Graphics and Ray Tracing, technologies, algorithms, industry.
  • Foundations: Pixels, Resolution, 2D Image creation and manipulation, Color models.
  • Triangle 01: Dot and cross product of vectors. Ray-Plane intersection detection.
  • Triangle 02: Dot and cross product of vectors properties. Inside out check for a point in triangle. Ray-Triangle intersection algorithm.
  • Camera animation: Introduction to animation in CG. Rotation matrices. Camera local coordinate system. Types of camera movements.
  • Scene: Mesh geometries. JSON scene representation, creating and parsing.
  • Light: Shadow rays. Direct lighting algorithm.
  • Shading 01: Barycentric coordinates. Flat vs Smooth shading. Reflections. Rendering algorithm.
  • Shading 02: Refraction.
  • Shading 03: Refraction + Reflection.
  • Optimizations 01: Multithreading. Bucket rendering. AABB. Ray-AABB intersection.
  • Optimizations 02: KD trees, creations, manipulation, intersecting. BVH trees, creations, manipulation, intersecting. 
  • Conclusion: Diffuse reflections and GI. FOV. Implicit surface (Sphere) intersection. Antialiasing.
  • Final project.

Part 2: Advanced, October - November

  • Introduction.
  • Foundation.
  • Rays.
  • Triangle 01, Representation, cross product, normal vector.
  • Triangle 02, dot product, inside-out test.
  • Camera Animation.
  • Scene.
  • Light.
  • Shading 01, Barycentric coordinates and Reflection.
  • Shading 02, Snell's law.
  • Shading 03, Index of refraction.
  • Shading 04, Textures.
  • Optimization 01, Buckets and AABB.
  • Optimization 02, Acceleration structures.
  • Wrap up.

Working Habits & Business Coaching

Teamwork 

  • What is a team?
  • Building trust.
  • Conflict resolution.
  • Engagement.
  • Responsibility.
  • Results orientation. 

Responsibility at work

  • Work ethics.
  • Responsibility at work.
  • Taking responsibility and adhering to working hours and commitments.

Meet the trainers

Associate Professor Petar Armyanov, Ph.D.

Mentor, C++ Algorithms and Data Structures

Lyubomir Koev

Mentor, C++ Algorithms and Data Structures

Associate Professor Boyko Bantchev, Ph.D.

Guest lecturer, C++ Algorithms and Data Structures

Zlatina Mihaylova, PhD

Lecturer, Business Coaching

Vladislav Vulchev

Mentor, Ray tracing

Asen Markov

Course Assistant, Ray tracing

Argir Boyadzhiev

Course Assistant, Ray tracing 

FAQ

Who is Chaos Camp for?

Chaos Camp is open to applicants aged 18+ based in Bulgaria, Czechia, or Germany. Applicants must be junior developers, recent graduates, or university students close to graduating in a relevant field such as software development or computer science. Applicants are expected to have knowledge and interest in mathematics, algorithms, C++ development, and coding for computer graphics which will be assessed through the Chaos Camp entry test.

Is Chaos Camp suitable for high school graduates and junior students?

The Chaos Camp 2025 training requires some knowledge and experience in mathematics, algorithms, and C++ programming. If you are aged 18+ and consider yourself well-prepared in these subjects, don’t hesitate to apply. If you are invited to take the Chaos Camp entry test but your results turn out to be insufficient, don’t hesitate to try again next year. 

What is the Chaos Camp 2025 admission procedure?

You can submit your application by April 30, 2025. The shortlisted candidates will be invited to take an online entry test to assess their knowledge of mathematics, algorithms, and software development. The approved candidates will join the Chaos Camp intensive training starting May 20, 2025.    

What are my chances of admission?

The shortlisted candidates must complete the Chaos Camp online entry test to assess their knowledge of mathematics, algorithms, and software development. Up to 30 best performers will be invited to join the Chaos Camp 2025 course. So you’d better take your time to prepare well for the entry test.

How can I prepare for the Chaos Camp entry test?

To achieve a high score on the entry test, you need to demonstrate your knowledge in:

  • Basics of C++ programming
  • Basic understanding of mathematics
  • Knowledge of algorithms and data structures 
  • Some knowledge of computer architecture and operating systems 
Why is Chaos Camp 2025 only open for applicants based in Bulgaria, Czechia, and Germany?

Although Chaos Camp is a free training aiming to elevate juniors’ skills, it is also a way for Chaos to find the most suitable and motivated candidates for junior developer positions at the company. Chaos Camp 2025 is looking for candidates based in the locations of our key development teams. If you are invited to join Chaos you may be expected to visit the office resp. in Sofia, Prague, or Karlsruhe.

Will I get a certificate at the end of the Chaos Camp training?

All Chaos Camp students who attend at least 80% of the course lectures and submit at least 80% of the homework assignments will receive a Certificate of Completion issued by Chaos. The Certificate will show details about the course curriculum.

Will Chaos Camp help me become a Chaos employee?

Chaos Camp can be a doorway for several best-performing course participants to join a Chaos coding team. They will be selected for an entry interview after the end of the Chaos Camp in July 2025.

Is Chaos Camp free?

The Chaos Camp training is free of charge for all participants. There will be no fees or taxes.

Past courses

© 2025 Chaos Software EOOD. All Rights reserved. Chaos®, V-Ray® and Phoenix FD® are registered trademarks of Chaos Software EOOD in Bulgaria and/or other countries.
Close
Your cart
There are no items in your cart.