This paper deals with the design of observers for a class of continuous time nonlinear multi-input multi-output systems with nonlinear outputs. Geometric tools are used to transform the original system into an appropriate observer canonical form. Furthermore, a pole placement technique is used to obtain a desired transient response of resulting error dynamics. The observer design is presented for two cases. In both cases, it is shown that the observer gain can be obtained from the solution of a Riccati equation. An illustrative example of state estimation in induction motors is presented to explain the proposed observer design. The performance of the method is also verified by numerical simulations.