In this paper we propose a recommendation tool framework to help a student pick the right program, right course and right instructor that fit his/her skills and characteristics. We apply collaborative filtering (CK), using a non-negative matrix factorization (NMF) method, to extract latent features corresponding to the student academic skills and to the program required skills: when augmented with a student's competence level, the required skills of programs can be exploited to produce a program recommender system. Then using a multi-objective optimization method, we propose a degree plan recommender system that is able to design a customized/personalized degree plan that will better fit to real life situations by moving the courses with relatively higher crucial values and higher predicted letter grades to closest possible terms while meeting all the constraints. We extend our framework to include instructor recommender system. The intuition is to recommend an instructor that jointly fits the required skills of the course and the academic skills of the student. The experimental results conducted using real data from the University of New Mexico (UNM) show that our proposed framework can accurately extract features related to students and courses. The results are validated using k-means clustering technique. Ultimately, using this framework, we will be able improve enrollment, help students graduate in a timely fashion and incentive their ability to persist.