Meet our Frontend Engineering and video expert: Haithem Mosbahi
In this episode, we are discussing enterprise video trends and user experience with Haithem Mosbahi, who’s responsible, among other things, for movingimage’s user interface and API.
What is your role at movingimage, and what is your team in charge of?
At movingimage I work as a Frontend Engineer. My team (FlyingFox) is a cross-functional team where frontend and backend developers, along with QA engineers, collaborate to build our innovative enterprise video platform. Furthermore, the team is responsible for one of our video platform’s core components, which is the video playback component. It’s used across the platform in different products and can be easily customized to meet the needs of our customers.
What is your particular area of expertise and interest in EVP?
I specialize in building the frontend layer of the platform. I use modern front-end technologies such as Angular and Typescript to create UI components that can be used across the platform. I am mostly interested in the player and video technology, and in making the user experience as smooth as possible. Working with video means handling and managing huge amounts of data. With this in mind, my mission is to present this data to the end-user in the most simple and efficient way. Additionally, I always strive to, with the help of the team, provide our users with the best video experience.
How do we help our Citrix users in optimizing and improving their video experience?
Financial service companies like banks and insurers use Citrix to provide their employees and customers with secure and instant access to applications, data, and communication on any device. Thus, we have been working on our EVP to maintain the requirements of our Citrix customers and to optimize their video experience on our platform. We achieved that by making our video playback component adapt to the Citrix environment – depending on the end user’s device and connection, our video playback chooses the most suitable playback engine. For example, our player uses ActiveX engine to optimize the video experience for our Internet Explorer users and to reduce the rendering time on the browser.
Tell me about your team. What are the benefits of working in a cross-functional team?
My team FlyingFox is made up of frontend developers, backend developers, a user experience designer, and a QA engineer. Along with our product owner and agile coach, we collaborate to always improve the platform and to help our users managing their videos in the best possible way. Being a cross-functional team means that we have a diversity of experience, expertise, and knowledge. For instance, the integration between backend and frontend components is straightforward and runs smoothly since we discuss the implementation details on a daily basis. In addition, as a team, we are responsible for continuously delivering new features to our customers. This gives us full control over the features, from analysis, estimation, design, to having the feature deployed and tested live.
In our company, we follow the MIA framework. Do you feel that working agile helps you with delivering new features?
Yes, it definitely does. Working agile at movingimage means that we have the chance to review our work on a regular basis and thus to make sure we don’t diverge from the goal, ensuring that the product offers the benefits and features needed to provide the customer with value. As a FrontEnd Developer, getting early feedback from the UX designer and the product owner has helped me a lot in improving my work before delivering a new feature to the end-user. Additionally, working agile has helped us as a team to quickly respond to changes, not only in customer requirements but also in adopting new technologies.
How do the developers work with UX to improve user interfaces and user experience?
As a frontend developer, I work closely with designers and UX experts to provide our customers with a simple, efficient, and easy to use user interface. Moreover, we proactively give each other feedback during design and implementation, then test to achieve the best user experience. The workflow of a new feature goes from completing user research and understanding user needs to create a design that we discuss within the team before jumping into the implementation.