BiATNovo combines a CNN spectrum encoder, directly modeled after the ion-CNN in DeepNovo, with two attention-based decoder networks to sequence a given spectrum. The key contribution is the introduction of two new approaches for bi-directional peptide decoding, called "independent" and "synchronous" decoding. During independent decoding, two separate decoders predict the peptide from N-terminal to C-terminal and from C-terminal to N-terminal. The two predictions are then combined into a single peptide sequence by retaining the top-scoring amino acid at each position, subject to the constraint that the final prediction matches the overall precursor mass. During synchronous decoding, a single transformer decoder predicts the peptide sequence simultaneously from both directions, with the prefix and suffix meeting in the middle when a stop token is predicted or the precursor mass is exceeded. A re-ranking step is then applied to the outputs from both the independent and synchronous decoding strategies to select the single top scoring peptide for each spectrum. The proposed decoding strategy is also compatible with the spectrum encoder in DeepNovo-DIA, allowing BiATNovo to be applied to both DDA and DIA data.