Take the 2-minute tour ×
  • What comes in deployment scripts. Or what are things to keep in mind while writing one.
  • Is bash powerful enough or you would recommend perl/python?
  • Keeping Network Monitoring in mind, if you have to recruit someone, what skills would you look for in the candidate.
share|improve this question
add comment

2 Answers

up vote 2 down vote accepted

deployment scripts -

  • dont presume the customer wants to install your stuff where your standard is. They may not have the diskspace in /opt or even /usr/local/
  • your product may require root access merely to run on a sub 1024 port and they may require your product to run as a user (security reasons).
  • your product may require user accounts that are application accounts, but they may require the password be changed regularly.
  • remember there are firewalls in many companies... poking holes thru their site is not always an option... what proxies can be used to deploy the product?
  • customer platforms (os libraries) may have a wide variety of versions that dont meet your compability requirements... how are you going to safely work out those issues.

powerful scripts -

  • you generally can do most stuff with bash, but dont shy away from perl or python... but be careful if you require these tools to be pre-installed. Installing perl and a pile of CPAN modules just to run a third party product makes the deployment much harder (and creates a versioning nightmare for compatibilty).

recruiting candidate skills -

  • they need to know network topologies, firewalls, load balancers, routers and switches of course
  • they should know scripting (more than just 50-line bash scripts)
  • they should be able to figure something out on the fly, not just say 'I dont know'
share|improve this answer
add comment

Are you developing a new product or are you simply looking to monitor your existing network?

If you're looking to monitor your existing network, look to the open source community. There are many packages that provide some or all functionality you may want in monitoring.

nagios: great at reporting faults in the network

cacti: great for graphing utilization information.

zabbix: great for reporting faults and collecting utilization information.

These tools typically use snmp and other agents to collect the information, a database of some sort to store the historical info, and a web interface for management and displaying the information.

There are likely other monitoring apps out there, especially in the commercial space.

If you're more interested in tools for managing the network device configs themselves, a popular opensource app is rancid.

Lastly, if I were looking for someone who portrays themselves as someone who understands network monitoring, I would ask about these tools, as well as SNMP and snmp tools such as snmpwalk, and I would also expect them to know or at least know of tcl/tk or at least expect.

If, after reading this, you decide you want someone who can just integrate all these tools into a self-contained product, instead you'll need a platform engineer who understands all of the above as well as how to make a management/presentation layer for managing all of the above...

share|improve this answer
oh my god, it is not so straight as i thought. thanks –  Vivek Sharma Jul 14 '09 at 11:33
add comment

Your Answer


