I have long list of locations(post offices/carriers) to display (about 50) in e-commerce checkout page. Is the dropdown the best way to do it (I know it is most common, but has it changed with mobile-first design?)? I have no idea how good or bad is to use dropdown in mobile devices in such cases and what are the alternatives web designers are using in checkout pages (lack of experience). Are designers using the same thing in desktop design?
Search with Autocomplete
It is legit to use search with Autocomplete, as it can be used on both web and mobile view.
However, High Expectations
typically this method gives the sense that you are able to deliver World-wide, which puts the user at High Expectations mode.
Once the user realizes that the area that he is looking for is not covered, he probably will be disappointed - as he just wasted his time going through the sales process, which results in a negative impression of the brand, and a bad user experience.
In order to avoid this, make sure that the user has an overview of the areas that you cover, which can be done in many ways.
For example, on the Homepage, you can add a map of delivery coverage. Another example, using the IP Address, you can identify the city that the user comes from, if it is not covered, then you give him a notification before he makes a purchase, that his city is not covered.
These examples aren't necessarily applicable in your context, but they can give you a sense of how to deal with your situation, and you can brainstorm better ideas base on your context.
Probably the simplest possible design would be to categorize the locations based on various parameters. For example, you can categorize by country, state, city etc. Each of these categories can then become a separate drop-down.
This would save the user from the trouble of sorting through 50 items in a single drop-down, and still the user would be able to find the correct location with relative ease.
My Preferred Approach
Find a way to get the user's address into the system. If you have a signup/login process, it would be easier to get it. Or you could make use of the geolocation coming in from the user's mobile.
The next step would be to find out the nearest location to user's address and present a list of locations with ranking according to their distance from the address user has provided.
This would apply particularly if the user is shopping for something from your app, and wants it delivered to him. For any other scenario, you may have to adapt the logic accordingly.
Dropdown is generally ok for small set of items (say less than 30), the longer it gets, the harder it is for users to find items on both mobile and web.
The standard way to sort is by alphabetical, and it makes sense because it's easy to understand but in some cases it may not be relevant. For instance, country dropdown puts U.S.A. at the bottom of the list and U.S. users will have to scroll through most of the other countries.
In your case, If you are asking the users to pick the nearest/preferred carrier location. Alphabetical sorting may not be the right way to go. What you may need is to identify user's location (either based on their browser IP or prompt them for their zipcode) and then sort the dropdown based on distance. Or outright suggest the closest and allow them to modify.