Microsoft Corporation Software Engineer II in Berkeley, California

The Semantic Machines group is working to reshape human-computer interaction with conversational AI in our three offices: Boston MA, Berkeley CA, and Bellevue WA. We’re looking for software engineers to work hand-in-hand with our data and research teams to develop new approaches to solving deep problems in dialog data collection, natural language processing, and machine learning.

We’re looking for full stack web developers to build tools and user interfaces for the next generation of dialogue systems. No experience with machine learning or natural language processing is required – we’d love to work with people that are excited about the promise of these technologies regardless of their previous exposure to them.

Responsibilities

  • Collaborate with our data collection team to create rich web-based tools for human annotation, data review, and metrics gathering.

  • Build UI to enable rapid experimentation by visualizing/exploring system behavior, datasets, and internal model representations.

  • Design and create web- and app-based experiences for our users, including rich UI components and two-way audio streaming.

  • Work with our research team to build and run experiments for improvements to our core representations and learning mechanisms.

Qualifications

  • A bachelor’s in computer science or a related field (or equivalent experience).

  • 3+ years of experience in a software engineering role including 2+ years of experience with standard web technologies (HTML/CSS, JavaScript, HTTP, etc.).

  • Ability to take ownership of software projects, including collecting feedback and requirements, producing technical designs, and iterating on the resulting software with users over time.

  • History of building rich UIs such as IDEs, data annotation/exploration systems,or sophisticated web apps, with a focus on improving workflow of internal or external users.

  • Familiarity with functional programming, static type systems, and algorithmic complexity, as well as a desire to strive for understandable and flexible abstractions in code.

  • Preference will be given to candidates with experience in technologies we use, including Typescript, React, and Scala/Java as well as those with related experience in machine learning, natural language processing, or dialogue systems.

Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, color, family or medical care leave, gender identity or expression, genetic information, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran status, race, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable laws, regulations and ordinances. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you need assistance and/or a reasonable accommodation due to a disability during the application or the recruiting process, please send a request via the Accommodation request form at https://careers.microsoft.com/us/en/accommodationrequest .

Benefits/perks listed below may vary depending on the nature of your employment with Microsoft and the country where you work.