[nycphp-talk] Zend PHP Certification
Chris Shiflett
shiflett at php.net
Sun Jun 20 22:33:01 EDT 2004
--- inforequest <sm11szw02 at sneakemail.com> wrote:
> Small software company seeks talented Web applications developer.
> Duties: create Web applications that are secure, robust, and
> scalable. Must possess a BS in computer science or similar field.
> Must work well with others and have strong analytical skills.
>
> I've never seen a job post like this in my life.
> -----------------------------------------------------
>
> And isn't that sad?
Yes.
I've never liked the tendency for people to make decisions in areas in
which they are clueless, and this is exactly what happens in a lot of
large companies (even though there are better alternatives). A business
manager will make important decisions about technology when he/she has a
more capable staff (hopefully consisting of a technical manager of some
sort) that should be making such decisions.
I like the idea of everyone doing their own job and doing it well. A
technical manager should be the one who does the software design and makes
the big-picture decisions regarding technology, not the business manager.
A business manager should be making business decisions.
Of course, this also has as much (or more) to do with old company versus
new company, and new companies have a distinct advantage. If business is
considered to be above technology rather than a separate discipline, the
technology of the company usually suffers. You end up with unqualified
people making decisions, and you also get the "all technical people are
the same" mentality, where the only difference between technical personnel
is a slight fluctuation in salary.
A more modern and savvy company will treat the two distinctly, and
technical personnel have multiple tiers according to their purpose. This
has a few advantages:
1. The "roof" is higher, which gives you better personnel. The master
hackers that you really want to employ aren't going to be satisfied with
"graduating" to any sort of business or management position. You need to
have higher technical positions.
2. A better division of labor is achieved. You can have technical
managers, software engineers, data modeling experts, security officers,
disaster recovery experts, network experts, systems administrators,
database administrators, and programmers. People can do what they're best
at doing, and the sum of the parts is a better development team than you
could otherwise achieve. You get people doing what they do best.
3. Motivation is higher. Your technical personnel will respect a master
hacker to whom they must report. When you have technical personnel
reporting to someone they view as clueless (which is how most of your
business staff will be viewed, like it or not), then they're more likely
to be dissatisfied at their job, and your productivity and creativity
suffer.
Anyway, I suppose I've drifted off-topic now, and I could rant about this
all day. :-)
Chris
=====
Chris Shiflett - http://shiflett.org/
PHP Security - O'Reilly
Coming Fall 2004
HTTP Developer's Handbook - Sams
http://httphandbook.org/
PHP Community Site
http://phpcommunity.org/
More information about the talk
mailing list