By definition this latin word describes a person who is no longer favored or welcome. In corporate America this describes a person that bucks the system once too many and is on the outs!
If you are anyway dedicated to the craft of developing software this definition may refer to you. If you have been preaching about architecture, SOA, Agile, SaaS, etc to no avail, this definition may refer to you. If you have made countless presentations to board members or executive management and are frustrated beyond recognition, guess what this is you.
I have free advice that will place you back in the favor of the powers that be. Let me harken on a quick but effective analogy. I'll try not to beat it to death.
Ever notice that laminate floors look just as good as real hardwood to the average Joe? Ever notice how quickly laminate floors can be installed by the average Joe? Unfortunately this represents the state of software development in many organizations today. Companies want the quality of hardwood for the laminate price. Who can blame them? Scripting languages and WSYWIG tools have provided a rapid path to "it works" and have wet the appetite of entrepreneurs who want the software built yesterday. With the power of scripting languages and the willingness to cheat at every corner, a software developer can make amazing almost impossible progress in short order. Amid the cheers of a working demo there is always at least one software developer with a sinking feeling in the pit of his stomach. He knows it won't work. Are they going to release this?
The best approach in defeating this evil short sighted principle is to first identify what type of company you work for. Is it a company that survives solely on the strength of its relationships? Do they starve the technology team for resources? Does the company actually make money because of the technology? If they don't and you are a disciple of any software discipline you are in for a fruitless uphill battle to no where. Trust me no one will appreciate the science part of your degree nor will they care what data structures you are using of if your database has been normalized. Those pretty block diagrams and all that thinking at 3AM will go where ideas die. That said if you are seeking to reduce the acids in your stomach, put away the botany set and give them a chia pet!
The best advice I can give is to understand the business need and give them what they want. And recognize that what they want is often not right! You will have more success understanding your role and producing quickly rather than convincing a ton of people from other disciplines that doing it "right" will yield them savings in the future! Most business aim to produce revenue with the promise of profit. Your job is to help attain that goal with the help of technology. Sometimes creating a platform in 3 different scripting languages with a text file for a database is the best path forward.
Here is another piece of advice. Showing them a spreadsheet of how their decisions are wasting investor's money doesn't work. This is especially true the smaller the company. The winning formula is to produce quickly and talk about the craft of software with your geekie buddies.
A mentor of mine gave me priceless advice years ago. "Always act like a consultant." Consultants suggest but ultimately deliver what the customer wants. And if communication is managed successfully they get more business even if the final result is not what the customer thought they were getting. Try it and watch the results materialize.
Unfortunately non-technologists can only distinguish great technology from bad when something goes wrong. Plumbers and Engineers get paid the best money when things go wrong.
Trust me. You will be forgiven if you produce quickly-- even if it doesn't work!