My interview was at Salesforce tower, in downtown Indianapolis. Getting to the location is pretty easy, but the parking situation is a bit rough for anyone who isn't from Indianapolis or doesn't know the downtown area well.
I was greeted at the reception desk and asked to sign in, which was a straight forward process; it was all done through a tablet, where it will ask for some information, such as who are you here to see, your name, and email. Within a minute, I was greeted by the person who would take me up to the interview area. Everyone was polite and and the office was bright and welcoming.
I was told how the interview process would go and handed a folder with the names of the people who would be doing the interviewing as well as the times of each step.
The interview was broken up into 3 segments which were each an hour: a team of 2 people, 1 person, then 2 more.
Part one was basic questions around software like OOP and how I would go about solving some questions. I feel this will differ depending on the team / platform / technology you will be applying for. Be ready to whiteboard some of your solutions. Also, if you have something on your resume, (a technology, language, strategy, etc.) be ready to answer in depth.
Part two was a review and questioning about the 'hacker score' that Salesforce will likely have you do before the interview. Be ready to answer questions about why you wrote code in the fashion you chose, what could've been improved, and what you might have had issues with overcoming.
Part 3 was similar to part 1, as in I was asked more of the same questions and some others. This could be good for you if you learned or rehearsed from part 1. Similar to part 1, be ready to whiteboard the code or solution.
Once the final portion was over, I was shown around the office where I could get a good idea of the daily work life of a Salesforce software engineer. This will give you a little more time to casually ask more about the work-life and culture of the company and teams.
Tips for all 3 sections: read up on Salesforce as a company, their platforms, and their culture. Have questions ready if there's something you're unsure of. Do not be afraid to answer "I don't know this" or "I have not had to do/use this". There will be questions that are possibly misleading where the answer is "I've not done this" and that might be, because it isn't possible. It can be very convincing when asked "How would you go about doing X, Y, Z." It'll make you second guess if it is really possible.
Take notes and ask questions about things you may not know the answer on. It shows that you're willing to learn about it. Even if you're not accepted on board, you'll have another tool in your kit.