Career Profiles: Natural Language Processing (NLP)
The Career Profiles in Linguistics section regularly highlights career paths taken by linguists. If you would like to recommend someone (including yourself) for a future profile, please contact Career Linguist.
Alexis Raykhel is a computational linguist at CognitiveScale, a tech startup with a focus on cognitive science based solutions to various data problems. She is also into knitting, crocheting, and reading as much sci-fi as she can.
She recently took the time to answer my career path questionnaire – thank you Alexis for this insight into your work and your journey!!!
How did you make the switch from student to professional?
- During graduate school I realized that I was not interested in being a full-time academic. I decided that after my master’s I would instead look for a job outside teaching. My studies were focused on cognitive science, so it was a natural path towards the world of tech companies looking for “cognitive” solutions. “Cognitive” outside academia has more to do with shaping algorithms to be smarter, but understanding how brains process information is one way to contribute to programming problems. I was able to use programming here and there in grad school (writing algorithms for statistics, or to make a graph, or to analyze a dataset), but it wasn’t until after I got my current job that I really learned anything about software development. That said, if I hadn’t been able to say “yes, I know how to generate bigrams in python,” or “I’ve used a terminal to grep before,” I doubt they would have looked twice at me.
Knowing enough about programming to understand (not necessarily implement!) how algorithms and your computer work can make a huge difference.
Can you give an example of a skill or ability that you use at work / have used to show an employer how you would be suited to the tasks/duties/responsibilities of the job?
- Believe it or not, my current employer had me do some “homework” before my interview. This homework involved drawing syntax trees! It was amazingly familiar. It turns out that natural language processing (NLP) depends heavily on grammatical structures, so being able to understand and manipulate those is important.
How do you tend to find job opportunities?
- Talking to people in everyday hobbies has led me to learn about industries I didn’t know existed and jobs I never would have thought to apply for. Now that I have a tech job, I spend a lot of time reading blogs and posts by other professionals. This helps me find companies that do work similar to what I’m currently doing, so in the future I will have a place to start looking. LinkedIn has companies organized by type, so once you’ve found the buzzword associated with your favorite sector of the economy it can be easy to find relevant companies.
What resources would you share with someone who is just starting down their career path?
- ONet is awesome. LinkedIn. Scouring the jobs listed on linguistlist just to see what kinds of jobs are out there and then using those keywords to expand your search. If you are still in school, go visit your career counselors. Even if they don’t find you the perfect fit (mine sure didn’t!), they will connect you to great resources and give you a better idea of what the world outside academia looks like.
What do you do as part of your job?
- I research patterns in written language. I contribute to a proprietary ontology that helps our NLP tools give better results.
Can you give an example of a recent project that you worked on?
- Generative x-bar parser. Yes, seriously! It was amazing to work on something so very academic in a business setting. We are now working on various aspects of entity recognition in texts which can help narrow down query results. This involves writing programs that look at the structure of a text to determine the relevant bits and then using semantic understanding to solve problems.
What aspects of your previous experience are most applicable now in your current role?
- I use my research skills on a daily basis and apply my understanding of semantics to every aspect of NLP. NLP without semantics is fairly weak.
What are the best and worst parts of your job?
- Best – working with smart, passionate people. Learning from them and from practice. Being able to take academic subjects and find ways to apply them IRL.
- Worst – moving very very fast. It is true that academia moves at a glacial pace. We are trying to do in a couple years the work that a team of academics might do over a decade.
What advice would you give to someone who wants to create opportunities for themselves in NLP?
- Work on a programming project you are interested in and put it on a version control site like Github. It doesn’t need to be something new and exciting; you can write a part of speech tagger, or a tokenizer, or any NLP program! Or make something new and exciting! The important part is learning how to do the coding, making a complex project, and structuring your program. Putting any project onto a site like Github will show that you are looking for critiques and understand one of the most widely used versioning control sites out there.
- Additionally, be flexible and be open. The tech world is all about learning new things. It doesn’t matter if you are a fast learner or a slow learner, only if you are willing to ask questions, challenge yourself, and really learn.
What emerging trends do you see in your field/ changes that will impact this work in future?
- There is a lot of machine learning, and in NLP that means understanding widely used techniques like bag of words. Machine learning in NLP is also used a lot for semantic understanding, and while in the past all NLP was purely statistical and structural, it is becoming more nuanced as people realize we need a better way to know what words mean in different contexts.
Networking – how / where is it done in your field?
- Networking is huge in the tech world. If you are new to tech, then join a Meetup group in your city for programmers. If there isn’t one, then join an online forum and talk to other people learning the things you are interested in (stack overflow is good for asking and answering questions; reddit is good for finding a forum specific to the topic you are interested). Even if you don’t have all the skills just yet, finding a connection to the tech world could get you an entry level job. And if you do have the skills and just need the networking, start at learning-focused groups or contributing to other people’s open source projects.
Contact Alexis firstname.lastname@example.org – she shares that she loves chatting with people, so please reach out!