Search code examples
web-applicationsreportingbusiness-intelligencedashboard

Skills & technologies required for BI dashboards & Web reporting development


I am a young developer coming from the analytics world and I am applying for a project including development and customizing of:

  • dashboard and
  • web-based reporting for BI (business intelligence).

As I said, I'm young and learning, so I'm not bringing a list of nice projects I did, so now my question is the following:

Q: What are the skills to have and technologies to know?

If this question is not to be easily answered because of the BI technology they use for the project, what are the major groups I should look at?

My stand right now:

  • HTML
  • PHP
  • AJaX (JavaScript + XML)
  • CSS (?)
  • SQL
  • JDBC for Oracle & IBM Cognos (?)
  • eventually a proprietary language (ABAP / SAS / any major other?)

If all the above sounds like I have no idea of what I'm talking about (which is probably true), what would you advise me to do? First look at what they use as a BI-platform? Is it even possible to cover all platforms?


Solution

  • I'd say you're on the right track. Keep your PHP STRONG. If you're going to be doing any server side processing, you might also consider becoming familiar with BASH and Perl. They can be your best friends for processing data in cron jobs before clients get to your site. That way, they see pre-computed data and we don't have to make them wait for a report to generate when the load the page, it's just cached.. One of the blooming parts of web design are Content Management Systems, like Drupal, Joomla, Wordpress, etc. I know personally that a lot of the tools that are inherently built into the framework of Drupal make for easy data reporting (using Views for eaxmple).

    mySQL is important to know if you plan on working in the web world. Most websites built on Unix platform use it for persistent data storage. I'd also recommend MongoDB, simply because it's an extremely useful database type when you're dealing with massive amounts of data. Mongo works OK with creates and inserts, but it lives for select statements. If you have a lot of static or slow-changing data, go with Mongo. MSQL is good to know when working on top of Windows IIS environments.

    If you want to learn some pretty data visualization tools, go play with the Google Graphs APIs and a platform like FLEX or Silverlight. These will enable you to showcase your live data.

    If you really want to play with the big boys though, use Node.JS for Asyncronous Data Gathering. For example, you can create a web page where you can poll people and view their poll information live.