You are currently browsing the category archive for the ‘Enterprise’ category.
If you are working in another context and have been considering out of personal interest or necessity joining “the Enterprise,” here are a few things you should know:
(1) The enterprise is about meeting people’s needs as they already exist
Generally speaking, you don’t do any true B2C stuff in the enterprise, it is all B2B and built on top of existing products and stacks, so your chance to start something “from scratch” is virtually nil. Don’t try. No one cares. This generally also means heaps of integration with existing business processes, software products, etc.
(2) Your users are not you
I’ve seen this problem come up a number of times, but most of the time the people using the product you will be building are very different from you and have a very different set of problems. You either need to understand these problems yourself or get used to working with someone who does.
(3) The enterprise is about money
Money is needed to live and is, generally speaking, the standard by which everything is measured in the enterprise. And by everything, I mean everything. Your cool widget isn’t worth anything to anybody unless it makes someone money. There is a certain reasonably large amount of bullshit eliminated this way.
(3) The enterprise has money
You don’t have to worry (or at least you have to worry less) about people with their latest greatest idea wanting you to implement their idea for time with their cat. I like cats, but I also like to get paid. This is one of the main reasons why people end up in the enterprise.
(4) Your tools are what you are given
Since you are working on top of someone else’s stack, generally you are stuck with whatever they provide. This can really suck. Unfortunately, due to No. 3, probably no one cares much about creating new tools for you to work with, since this costs them time and they can’t figure out why they should give you anything more than you need.
(5) You will be forced to drink kool-aid
Marketing, frequently involving technologies which are poorly-defined and do not exist, is the lifeblood of “innovation” in the enterprise. Generally speaking, this involves putting a vague concept out there and contrasting your awesome vague concept with the “conservative” parties that are just selling the same old sauce instead of your new sauce. The implication of this, is that if you are in the periphery, you are more or less forced to become a cheerleader. Although waving pom-poms can be nice (well, depends on who is doing this, do not click on this link), it can go to your head. Generally speaking, this sluicy juice does make people a bit crazy, so you have to watch out.
Generally speaking, you should be aware of all of these things before starting. The enterprise can introduce you to a lot of people with interesting needs in a variety of industry sectors (I’ve been fortunate to work with a number of very large and interesting corporations) without a lot of bullshit you might deal with if you are limited to small and mid-size companies and deals. The unfortunate consequence is that you will probably move far away from B2C solutions, which can be a better way to improve your skills as in many circumstances you are forced to be much more competitive when working on a product which, generally speaking, must iterate much more rapidly.
In the end, if you stay in the enterprise with the attempt to be as “good” as you can, you will probably become awesome at doing a lot of things quickly, but will probably stop doing them all that well (the incentive structure generally emphasizes quantity of features but less frequently quality of experience, something which generally means that you need to care about your customers).
I try to work on things I am excited about as much as possible because I work “harder, better, faster, stronger.”
Here are a few things I’m excited about at the moment:
(2) 12 Factor App. Not commented on heavily with the Salesforce community though a product not only of top-notch Heroku smarts but also with commentary from top Salesforce eggheads (e.g. Mountjoy), I think this is the sort of document we will be reviewing in five years as “prophetic.” In many ways, the future is already here, but it will take most of us a long time to realize it.
(3) jQuery. I know that there is nothing new here, but as a diehard jQuery enthusiast, I still think its time of triumph “in the enterprise” is coming soon as people finally get the message (and also realize that UI of their product is important).
(4) Berlin. Not quite Silicon Valley but people are picking up the torch and I expect to see more significant European-based challengers instead of just imitators over the next few years. Don’t doubt the Curry Wurst.
(5) Polyglot solutions. Even though it has often failed to invest substantially in its own open source ecosystem, Salesforce has taken something of a lead in acquiring in the fascinating although occasionally murky world of “polyglot” solutions, where various languages are used to provide what presumably is the “right tool for the job.” Despite the occasionally murkiness and gangs of cheerleaders without any real understanding of the strengths and weaknesses of various technology sets, I’m excited to see more definition about what constitutes the “right tool for the job” and robust composite solutions — of course, expect to see this more on the “bottom up” Heroku side than the typically top-down Salesforce side.
(6) Fractals. Okay, probably you know this already, but I think other people are finally starting to get the message about just how “fractal-eque” many parts of the world are.
I was recently considering adding on a testing framework and refactoring part of the databasedotcom gem, since I’ve been nominally involved since the inception — but then was considering the question, “Why do I do all this stuff for free?”
I think there is an interesting set of motivations in the enterprise world, where most people are in it for the $$$ and it is difficult to see why you would contribute something for free, especially to people who will simply use it to add to their pile of cash. So, to those involved like me, why do you do it?
Seriously, I’d like to know as I’m doubting my own open source commitment at the moment. It is all well and good, but “freebies,” especially in the Salesforce world, don’t pay the bills.