Another core interest is software. When I say software, I really mean programming software. No one likes software for the sake of software because all software has problems. Whether it is slow, buggy, or just plain not useful enough, any piece of software has its problems.
The key to writing good software is in the modelling of the functionality or the abstraction of the functionality into well defined, er, clumps. You want to create little clumps of software that have well defined responsibilities, interfaces and relationships with other clumps.
Of course, writing commercial software requires a whole host of other activities, and the actual modelling and writing of software makes up about 5-10% of a software engineer's job. Unit and system testing, documentation writing, bug investigation and fixing, maintaining build systems, meetings and discussions groups, email flaming, etc etc.
In my spare time a while back I wrote a software package for the management of stock portfolios. Check out StockWhip!
I've worked for such companies as Baltimore Technologies, CyberTrust (now Verizon Business), RSA, and now, Websense. I work on the Email Filter product, fighting the good fight against email spam and other annoyances and threats.
A new project: Eavesdropper
1 week ago