First, I received a call. We talked about my background experience and resume. Then she sent me an email about an online assessment which I think it wasn't something to value your performance in the office. After that, they called me to schedule a face-to-face interview. I went there and they started asking many unnecessary difficult questions about programming. They asked me about C#, SQL, Javascript, and Ruby. They kept asking hard questions in a way that made me uncomfortable because some of the questions were unreasonably hard. They provided different papers full of messy codes (which were in different languages like Ruby which I didn't apply for) and asked me to explain the logic behind them. At the end of the interview, they gave me two questions to implement one in SQL and the other in C#. After about a week, they called me and said this position provides [very low salary] because this is an entry-level or junior level! Which they didn't inform me before! The position they gave me was "Jr-Mid Level .NET Developer", but he said that this is entry level! He said if you're Ok with this salary we will set another interview!! It was the most unprofessional interview that I had ever have. I am saying this because currently, I have an offer from a very well known tech company in the U.S. for the "Lead Technology Developer" position and what they offered me was an entry level! It was unprofessional and I am really happy that I didn't move forward with the process. I think it is their method of hiring, by making the interview processes too difficult. Because they have a good reason to say that you need some time to get fit into this company. (In a company that as they said, they are using different technologies every two weeks! So everybody is learning there and there is no reason to evaluate applicants as entry-level opportunities.) I have many years of experience and evaluating me as an "entry-level .Net developer" was offensive.