  Continuous-variable quantum information processing through quantum optics
offers a promising platform for building the next generation of scalable
fault-tolerant information processors. To achieve quantum computational
advantages and fault tolerance, non-Gaussian resources are essential. In this
work, we propose and analyze a method to generate a variety of non-Gaussian
states using coherent photon subtraction from a two-mode squeezed state
followed by photon-number-resolving measurements. The proposed method offers a
promising way to generate rotation-symmetric states conventionally used for
quantum error correction with binomial codes and truncated Schr\"{o}dinger cat
codes. We consider the deleterious effects of experimental imperfections such
as detection inefficiencies and losses in the state engineering protocol. Our
method can be readily implemented with current quantum photonic technologies.
