software, hardware and web application development