A recommendation engine in e-learning is a system that selects or ranks the next learning resource — video, exercise, article, or path — for each learner based on a combination of signals including mastery estimates from knowledge tracing, engagement history, content similarity, and peer behavior (collaborative filtering). The problem is structurally similar to media recommendation but with a different objective function: the goal is learning gain, not engagement time, which means recommending a challenging but appropriate next item rather than the easiest or most entertaining one. Collaborative filtering approaches find learners with similar profiles and surface content that helped those learners; content-based approaches match the learner's current knowledge gaps to the topics covered by available resources. Hybrid systems combine both. The engine consumes xAPI statements or equivalent event streams as its live signal, so the quality of event instrumentation is a prerequisite for recommendation quality. A common failure mode is the filter bubble: the engine keeps recommending similar content and the learner never encounters material that challenges or broadens their existing framework. Introducing deliberate diversity and serendipity — occasionally surfacing something outside the predicted path — is an intentional design choice. Explainability is also a concern: learners and instructors benefit from understanding why an item was recommended, which pushes toward interpretable over black-box models.