- You're not being people-managed at all, and you're not encouraged to speak about what's on your mind. No regular 1:1s with anyone. I wouldn't say there isn't any room for talking about non-technical issues, you just need to make that room yourself, have the courage to bring up whatever problem you have, and do that in an atmosphere that does not really encourage doing that.
- Stressful code reviews by the CTO (reviews are done in person). Mistakes are often okay, but when they are endangering the stability of the product or falls in some other "unacceptable" category the reviews got very heated and emotional, to the point where I feared those reviews and avoided them for as long as I could. To be clear, on a technical level the CTO was usually correct, and also he didn't get insulting. Nevertheless, on an emotional level some of the reviews were quite challenging for me.
- Sometimes an employee was shouted at for multiple minutes because of some unacceptable mistake. No apologies of any kind were made afterwards as far as I know. Again, no insults, but I'd describe it as emotional abuse nonetheless, especially since it's not talked over later.
- The default is 42h/week excluding breaks and 20 days of vacation per year. During negotiations, I asked for 35h, which was reluctantly accepted only if we put into the contract that both parties target 42h in the future.
- No collaboration with colleagues. I got my tasks from the CTO, reported to the CTO, and did the work more or less alone. Apart from the CTO, I talked about technical stuff with colleages once every few days at most.
- Sometimes the CTO would willingly explain parts of the code that were unclear to me, and sometimes I was told harshly to not give up that fast and figure it out myself, which left a bad taste especially when I had figured out stuff for the last few days and asked for the remaining unclear bits. I became very reluctant to ask for help.
- Very little automated testing, no static analysis, no linters, no automatic enforcement of the very strict coding standards. Also it's not like there's an "ok to make mistakes" culture, you need to make up for all of that with lots of discipline.
In general, it's a place where very little if not zero attention is paid to the human side of things. The existing engineers are doing fine (apparently, I haven't talked to them about this). But to get truly comfortable there, you'll need to be emotionally thick-skinned enough to not mind strong negative emotions directed at you and not mind the occational shouting at others.
I was fired after half a year because I didn't develop a deep enough understanding for some of the technical problems I was given, which is fair. The days following my lay-off I was as happy as I haven't been for a long time, only then realizing how stressful my time there had been.