Weekly Commit #014
This one is five weeks late, and the reason is most of what is in it: I started a master's degree and a job in the same month.
Two weeks of classes were enough to work out where I stand. The people doing this master's with me are good. The questions they ask are often the ones I had not thought to ask yet. That is uncomfortable for about a day, and after that it is the best thing about being here. You do not get better by being the most competent person in the room, and I am clearly not.
Reading before writing
I joined Finsolutia as a Software Engineer, part-time, while doing the master's at IST.
At university you start from an empty repository and you know why every file in it exists, because you watched it appear. Walking into a system that already works is the opposite. The code is correct, it is in production, and what you are missing is not syntax. It is why. Why this service and not that one. Why this field is nullable. Why a piece of logic that looks out of place is the only reason something else does not break.
Then there is the size. In a university project, even starting from a skeleton, a day or two is enough to read everything there is. Here that is not an option, and it never will be. The skill is not reading the codebase. It is knowing which part of it to read.
So the weeks were mostly reading, and mostly asking. The instinct, when you are the new one and part-time, is to figure it out alone so you do not look like you are slowing anyone down. But a question that costs a colleague two minutes saves you an afternoon in the wrong file. Reading the code tells you what it does. Only someone who was there tells you why it does it that way.
Smaller things these weeks
On the university side, we are learning Paxos in Design and Implementation of Distributed Systems. Consensus is a strange thing to study: the algorithm is either correct or it is not, and when it is not, the failure shows up several steps away from its cause. Most of what I learned came from making the state of the system visible while it runs, not from reading the protocol.
And in Forensics Cyber-Security we had a project where the job was to go and find secrets someone had left behind. I did not expect coursework to be that fun. What stuck with me was the discipline it demands: preserve the evidence, record every step, never touch the original.
Fourteen weeks in
See you next week.
#WeeklyCommit #SoftwareEngineering #Learning
Follow along here or on LinkedIn where I'll be sharing each new commit.