I would say that there's more than one way to do it. For me, it's been easy to pick a specialty. I have this niche technology that I work in. It's called React Native, and it's essentially using JavaScript to build phone apps. I've been doing that for five years, which is a really good amount of time for that particular technology, and that puts me in the senior category. So it's worked out great for me. But with all technology, you have to be amenable to change, because change is constant. Before this, there was another JavaScript framework that was really popular called Angular. Before Angular, there was jQuery. So you’ve got to be on your toes.
But you don’t necessarily have to specialize. If you want to freelance, you could take a broad approach and say, “I'll just take whatever I can get in these three or four technologies.” That could go really well for you. But you're probably not going to get as high a rate as you would with a specialty. So there are pros and cons for each option. And if you're thinking, “Well, what should I specialize in?” you could go to all the job sites and play around with how many jobs are open for different technologies.
I would also say networking is great. Organizations like Girls Who Code and Women Who Code can be really excellent companions or drivers of your network. Women Who Code Austin, for example, has a Slack channel that has thousands of people on it. So every week someone's saying, “Hey, everybody, we have an opening, apply and I'll get you an internal referral.” If you're trying to find jobs or find opportunities, any kind of specialty organization can be really great for that.