Before talking about working over time and taking work home, there are other questions to answer.
Number 1: you must enjoy coding. If you don't really enjoy coding, all of the hours working on a coding project will be long and tiring.
Number 2: how good are you at coding the languages a company needs. There are multiple levels for all coding languages: beginning, intermediate, advanced, and finally master. Obviously a beginning level would take more time than a master level to complete a project.
I have been programming for 40+ years and enjoyed every minute of it. Coding is a challenge for me and there is a feeling of satisfaction when the project is complete. Now that I am retire I created a Linux lab with three desktops working with puppet master and puppet nodes.
Leon recommends the following next steps:
Do you like coding? I think that's what you need to answer first to make sure it's the right path for you.
The key is to find a job that you'll enjoy doing, it can be coding or anything else but any type of work will require you to spend time to learn skills and hone them.
A quote I really like is the following: "Choose a job you love, and you will never have to work a day in your life."
I think it really depends on the company. Different companies have different company "cultures" - in some companies, perhaps the employees like to work a little bit longer than others to get more work done; yet, in other companies, some like to log a set amount of hours each day to maintain a good work-life balance.
If you're interviewing, you could ask the representatives of the company you're interviewing for "what is the company culture around staying late?"
However, I would say that coding itself usually is a time consuming experience; however, that doesn't necessarily make it boring or uninteresting.