I freelanced for 7 years and am back at a regular job now.

Things I miss about freelancing:
- freedom. I work from home now and have flexibility. But flexibility is not the same as freedom. I would take off a month straight. Or blow off a week with little notice. As long as I managed my customers expectations I could do these things.
- varying work. It was much easier to dip into new tech or go after work that stretched my skills constantly. I think I became a much better developer and a much better person overall because of my years working for myself.
- being picky. If I didn't like something I didn't have to accept or pursue the work. Sometimes now I get directives that limit me or my team from doing the best we can and I'd love to say, "I'm not doing that"

Pros of the in office job:
- coworkers. First, make sure you like them before you start. Bring next to other smart people can help you long term. You can make strong bonds that help you advance your career. I've worked with one person I met in one job at two other jobs now. People change jobs, knowing people is half the battle.
- social activities. Freelancing is isolating. Yes, go to meetups, go to conferences, join groups online. But it's still not the same as, "I'll see these 10 smart people every single day and can talk to them at will"

I'm now regular job but fully remote. Benefits:
- you get to work with smart people. But you have to very outgoing and constantly teaching out. I'm a bit of an introvert. I've had to learn this skill. Freelancing 100% helps here. You also need a good team who is also not afraid to communicate.
- flexibility: I mentioned this already but I take my kids to school and pick them up everyday. During the pandemic I monitored and kept the kids on track during home school while my spouse was at work. You can't do that in an office typically. I can split my day or take a long lunch and nobody cares.
- super smart people. The smartest people I've met have been during remote working (I'm 3+ years in now. 2 different jobs). It's not always like this. But remote jobs tend to try and find the best from anywhere. And when that is successful you will benefit from knowing those people.

I have happened to switch jobs roughly every 3 years. Freelancing was nice because it was a solid 7 year block where I could say I went from gig to gig and nobody bats an eye. With office jobs people start to question if you go from place to place in less than a years time :). I've found switching jobs to be the best way to learn the most and continually get higher pay. Each job I take I hope will be the one good enough to keep me around longer. If you're not learning at your current position, and you've stuck around for 2 years or more, then switch.

Oh, why did I initially switch back to a day job...

2 things: freelancers rarely get to stick around for long periods of time on big teams to build cool things. I was either solo and building a medium sized app or would work in a small team building something slightly bigger, or a large team where I'd build just one part. Working full time you get to see big projects start to finish.

The job itself. I was looking for freelancing work, found a good company, they wanted me full-time and I really liked the team and the work.

Stability of pay. I am married, have 2 children, and own a home. I did that all while freelancing. But my stress was reduced when I stopped having to constantly look for my next thing.