I never thought I would enjoy working anywhere near "software engineering." But now that I have worked at an actual software company and seen some of the rationale, failures, and processes behind designing large software systems, I find the concepts intriguing. In particular, generating code is less restrictive to me as a programmer than I had thought ; the only code that can ever really be automatically generated is boilerplate, which is quite tedious stuff to write anyway.
I'm working on embedding the Python interpreter in the generated code, so developers and testers can implement CORBA components using C++ for the inter-component communications and Python for the component internals. Makes for much faster prototyping. Not to mention the sheer wow factor of having a set of simple Python scripts running your component-based application ...
Unfortunately I haven't gotten to do much with GStreamer lately, which is disappointing because I've become mostly talk and only a little hacking. But I did spend some time this weekend building a cool media player applet for the GNOME panel using gst-python ; it's almost blissful writing applications in Python, and with the GStreamer backend it's easy to handle media files, too.
We got a 1.1 release of Confix out the door this week as well ; I'm looking forward to adding support for pkg-config to Confix so it can generate Makefile.am's for more types of projects. Adding Java support might come soon as well, depends on how well things go.