We give the first almost optimal polynomial-time proper learning algorithm of Boolean sparse multivariate polynomial under the uniform distribution. For s-sparse polynomial over n variables and ϵ =1/s^β , β >1 , our algorithm makes q_U=( s/ϵ) ^logβ/β+O(1/β)+ Õ( s) ( log1/ϵ) log n queries. Notice that our query complexity is sublinear in 1/ϵ and almost linear in s. All previous algorithms have query complexity at least quadratic in s and linear in 1/ϵ . We then prove the almost tight lower bound q_L=( s/ϵ) ^logβ/β+(1/β)+ ( s) ( log1/ϵ) log n, Applying the reduction in [9] with the above algorithm, we give the first almost optimal polynomial-time tester for s-sparse polynomial. Our tester, for β >3.404 , makes Õ( s/ϵ) queries.