I have worked a lot in computational linguistics, which is one of my favorite fields...
My first serious programming job led me to work on Correcteur 101 [http://www.documens.com/francais/produits_correcteurs.htm], a french grammar checker, at Machina Sapiens (now Documens [http://www.documens.com/francais/francais.htm].) I have contributed to many aspects of this software, more as a programmer than as a linguist, but I still had a chance to become very familiar with syntax dependency trees. Not that I would ever stop working with trees, in one way or another...
Later on, I worked a bit on multilingual software; a collaboration with Alis Technologies [http://www.alis.com/] which yielded a prototype of multilingual mailing agent named Lys (for SunOS), based on the ET++ [http://www.ubilab.com/publications/wei94.html] system, as modified for Unicode by André Weinand and Martin J. Dürst [http://www.w3.org/People/D%C3%BCrst/] . Martin helped me a lot to define the notion of font composition in the Lys project, and we published this work during the 7th Unicode conference.
Then, I contributed to the design of an ambitious project of automatic translation with Anne Pelletier, at Logiciels Panteor inc. [http://www.panteor.com/] (later absorbed by Documens.) The project never saw the light of the day; a sad story. But I got to think a lot about semantic models.
Finally, I worked on a simplified model of anaphora, to improve the dialogue of an automated attendant, within Mitel Network [http://www.mitel.com/]'s Speak@Ease Messager [http://www.mitel.com/DocController?documentId=9808] project.
If I were to do any of this again, I would probably use constraint propagation systems, such as Mozart [http://www.mozart-oz.org/]...