How laggy your game depends on the amount of given memory and how many processing power you need to have. To reduce the lag, you can either enlarge the amount of given memory or simplify the algorithms and trim down the objects' size.
I'm not sure how your friend handle his shader, but he should look into the graphic libraries that he's using, they might be doing plenty unnecessary stuffs by default. If analyzing the library is too time consuming, consider changing to different libraries that are simpler, or just use a game engine to build your game until you're comfortable with directX or the GL family.