It is very important to put your name out there (using several resources like a blog, github, stackoverflow, etc) in order to market your self, specially when you moved to the U.S and you haven't work for a company here, even if you did, still very important to communicate to your potential employers that you love what you do and you dedicate time of your free time to keep improving your skills by for example contributing to github open source project, or answering questions on stackoverflow, etc. Create you own blog is another way to market yourself, among other benefits you'll learn to deal with criticism, you might get feedback from new people, You'll have the opportunity of practice your written English and become a better writer, you will help other people, etc.
Get your own resources
You can either create your own projects (maybe univercity projects) or contribute to someone else's project, the idea is to collaborate and share. Here is an excellent guide to how to contribute to github projects http://kbroman.org/github_tutorial/pages/fork.html
Stackoverflow has become an essential tool for developers with millions of answer to different issues/situation for a day to day of a developer, has become a tool of knowledge where you can find your answer already or ask a question there's going to be somebody ready to answer your question. You can become one of this person that uses your knowledge to help others sharing what you learn product of your experience. Also when you register in stackoverflow you can create a profile where employers can find you and send you job offers.
Your own blog
Blogging is another tool to market yourself. There is a lot of resources to create your own blog, the two more popular services are www.blogger.com and https://wordpress.com/ you can create and host you blog for free with this two services, if you want more flexibility in the functionalities you can add to your blog or more control on the look and feel, I'll suggest you, to buy a hosting, I use wordpress with godaddy for this blog, also I'll suggest you to buy your own domain, for example yourname.com or yourname.me. If you still not convinced I'll recommend this article: http://www.thomashanning.com/10-reasons-you-should-blog-as-a-developer/
Connect with people near you
It is very important that you connect with other folks, doing this you might be opening doors to future jobs opportunities, you can use Linkedin to find other developers and managers near you, also you can use the meetups as a resource to meet people. I hardly recommend that before you apply to a job, research about it, look for the managers of the group you are applying, try to connect with them, you can use Tweeter, Linkedin, etc. You can ask for advises, make thoughtful tweets, ask them about the position they have open, etc. When you connect with them before you get the interview this might play in your favor.
Your resume is your more important marketing tool, the content of your resume it's provably the first thing hiring managers are going to learn about you, and it might open or close you the door to an interview, that's why it is very important to create a very pleasurable first impression. There are few rules of what a recruiter or hiring manager will spect from your resume:
https://www.livecareer.com/resume-examples/it/software-engineer (online tool to create your resume)
Prepare yourself for interviews
The interview is the next step in your journey to land in a job as software developer or related field, it is very important that you prepare yourself. Here are few websites where you can find useful information about interviews specifically within the software development field. Also in the book I suggested above there are several tips for interviews. Here you can find some useful links.