How do pull requests fit into a development process?

In my software engineering career I have never worked with pull requests. Probably because I only ever worked in relatively small teams (5-16 people) and only on projects that were structured well enough and had a small enough code base, which made it quite easy to keep track of all the changes other developers are making to it. While in those teams we’ve never used pull requests as a version control feature, we still had a process in place that required developers to first submit their feature branch to other developers for code review before it could be published. These feature branches when submitted for code review were “merge ready”. That means that as soon as the person reviewing the code gave the green light, the branch could (and should) be published to master without any further changes to it. As you can already probably imagine, there was quite a lot of code to review for each branch. Depending on whether it was a branch for a bug fix or a full feature, amount of code that needed to be reviewed varied between as little as couple of lines and as many as 3-5k lines or even more.