An elementary introduction to the classical version of gauge theories is made. The shortcomings of the usual gauge fixing process are pointed out. They justify the need to replace it by a global symmetry: the BRST symmetry and its associated BRST charge. The main mathematical steps required to construct it are described. The algebra of constraints is, in general, a nonlinear Poisson algebra. In the nonlinear case the computation of the BRST charge by hand is hard. Itis explained how this computation can be made algorithmic. The main features of a recently created BRST computer algebra program are described. It can handle quadratic algebras very easily. Its capability to compute the BRST charge as a formal power series in the generic case of a cubic algebra is illustrated.