Accessibility provides one of the most interesting and rewarding software development careers. This statement is biased to be sure, but consider these examples of problems in web browser accessibility:
- Exposing JavaScript driven web applications to screen readers.
- Making new HTML accessible, for example: canvas and video.
- Gathering information from the layout engine asynchronously but supporting desktop clients synchronously.
- Caching information about web content and reporting relevant changes to assistive technology desktop clients.
- Communicating the changes of a mutating DOM performantly and securely; choosing the right data structures and optimizing our traversal and filtering algorithms.
The web browser is a large and complex program. In order to do a really good job with providing web accessibility through the browser you should understand how everything works, including the layout engine itself. There is no end to the learning process and the depth of real world computer science-y goodness.
Pretty soon we'll work to provide an enjoyable eyes-free experience with Mobile Firefox on Android. We'll need to refactor our accessibility engine for out of process content. We'll need to help design and drive the next web and desktop accessibility APIs. We'll help define speech on the web. We'll do this because it helps people with disabilities participate in the open web and because we love it.
Sound intriguing? If interested please send a plain text résumé to: the first letter of my first name joined to my entire last name, at mozilla dot com.