machine learning Signal processing web development communication systems automation and embedded systems design mobile applications development