Understanding the mechanisms behind translation and its rate-limiting steps is crucial for both the development of drug targets and improvement of heterologous protein production with many biotechnological applications, such as in pharmaceutical and biofuel industries. Despite many advances in the knowledge of the ribosome structure and function, there is still much discussion around the determinants of translation elongation with experiments and computational studies pointing in different directions. Here, we use a stochastic framework to simulate the process of translation in the context of an Escherichia coli cell by gathering the available biochemical data into a ribosome kinetics description. Our results from the study of translation in E. coli at different growth rates contradict the increase of mean elongation rate with growth rate established in the literature. We show that both the level of tRNA competition and the type of cognate binding interaction contribute to the modulation of elongation rate, and that optimization of a heterologous transcript for faster elongation rate is achieved by combining the two. We derive an equation that can accurately predict codon elongation rates based on the abundances of free tRNA in the cell, and can be used to assist transcript design. Finally, we show that non-cognate tRNA-ribosome binding has an important weight in translation, and plays an active role in the modulation of mean elongation rate as shown by our amino-acid starvation/surplus studies.