Something to be aware of as a computer person coming into biology: Biology only _looks_ like it has logical constructs, abstraction layers, and general computational frameworks. When you start working with it, you'll find everything is messier than you expected and everything interacts with everything at every level. There are no abstractions, there are no actual boundaries, and your outputs are subject to evolutiona…
The I think about it is like this: Code is read and maintained by humans, so it is under selection pressure to be comprehensible by human minds. Reality has no such constraint. If the biological processes of some animal lead to inscrutable irreducibly complex "spaghetti code" but the animal is slightly more likely to produce offspring... the complexity wins. The natural world doesn't care whether or not we can unders…
The central dogma is DNA -> RNA -> protein, except that: 1. RNA can fold into a functional molecule 2. RNA can be spliced differently to make several different proteins 3. RNA can bind with proteins to create other functional units 4. The availability of amino acids and TRNA units within the cell affects the speed at which a protein is translated from RNA, which can affect its structure, which affects its function 5. The codon language is not guaranteed identical between organisms, which means the same RNA sequence can encode for different amino acid sequences in different organisms
And that's just in the transcription/translation machinery. That's what I mean when I say there's no abstraction: biology is a physical system, which means molecular & atomic interactions influence every level of every process.