Beyond Design: Reflecting on my internship experience at Dassault Systemes
I recently completed a 4-month UI Infrastructure internship at SIMULIA, Dassault Systemes at Mason, Ohio. During these four months, I got the opportunity to work end-to-end from design to development of an enterprise dashboard and, by the end of it, could successfully deliver a functional prototype to the team. It was much more than an internship experience for me… Starting with a smooth onboarding process to collaborating with a brilliant team of developers, presenting my insights during the team standups, and most importantly, being treated as a part of the 3DS family. I could not have asked for more…
As I started with the internship in January 2021, I was excited about the journey and expected it to be a comprehensive experience. To make sure I note down my learnings daily, I maintained a journal to refer to and reminisce my experience.
Here are some of the key learnings I would like to share:
Clear and proactive communication is the key!
As I started my internship, most of the team members worked from home, and remote collaboration called for effective team communication. Throughout my internship, a lot of collaboration with the Developers and Manager was required as the tool I was designing for was initially complex to understand. Asking the right questions at the right time and getting answers for the silliest question saved a lot of time and helped me develop an understanding with the team!
Self-learning, YES! Spoon-feeding, NO!
As I mentioned in the previous point, I made sure to ask a lot of questions to the team, but that was not about it. Every time I prepared a list of questions, I made sure to analyze and prioritize them. The complex questions that could create a roadblock were immediately asked to the team, and the rest were attempted by self-learning. Practicing this made a difference in my learning capabilities and gave me a thorough understanding of the process!
Whiteboarding to the rescue!
Understanding the process and complexities at Dassault was not easy! I had my own moments of getting nervous and wondering if I would be able to handle the assigned task? This is when rather than getting overwhelmed, I penned down all the requirements, design ideas, information architecture onto the whiteboard. The best part was whiteboarding all of this alongside the Developer I was collaborating with… These whiteboarding sessions majorly helped us in solving our roadblocks and staying on the same page!
What could I have done differently…?
Most of the team members I worked with had more years of experience, and out of respect, I would often ask for doubts or feedback too formally. I feel this could be improved as I could then create better dynamics with the team right from the start.
These were my key learnings from the internship… I have learned a lot from this experience, and DS will always be one of my dream organizations to work with! :)
I have shared an overview of my work process below, so if you want to know more about how I went from understanding my task to delivering a functional dashboard to the R&D team, scroll down to read….
or
Interested to know the challenges I faced? I would be happy to connect!
What did it mean to be a UI Infrastructure Intern?
As I started with the internship, the only understanding I had was to work on the performance monitoring dashboard of the SIMULIA Structural Scenario Creation tool. The R&D Manager and Developers would use the dashboard to monitor the performance of the scenario creation tool. Coming from a software background, I had no experience using tools like CATIA, SIMULIA that are used to design and simulate mechanical prototypes! But, the team had planned a smooth onboarding and training process in the initial weeks, which proved to be extremely helpful in understanding these tools of the 3DExperience platform.
The team worked in an agile setting; I would attend the daily standup meetings with the team, wherein each team member would discuss the work done/in progress for that sprint. I have worked in an agile team environment as a Developer before, but iterating on my designs as a Designer was an interesting experience… It was intriguing to see that the team give me an opportunity to present my insights during every meeting…
Now, here is an overview of my process that I followed from design to development:
Stage 1: DATA VISUALIZATION
The goal was to design a minimalistic and intuitive experience that would reduce the cognitive load for the team and help them analyze complex data
- I started the design iterations by thoroughly understanding the user requirements. In this case, the development team and R&D Senior Manager were the end-users.
- Out of the 3 data visualization ideas that I presented to the team, we decided to implement an enterprise data table. It was easier to comprehend a data table compared to the other ideas like graphs/charts. In addition, the data table would provide us the flexibility to add more data as and when required.
I completed the design in 3 iterations by getting continuous feedback from the team and made sure I was adhering to the timelines. Maintaining clear communication with the team about the features I was prioritizing in my designs helped me.
Stage 2: SOURCE CODE IMPLEMENTATION AND MANAGEMENT
The next stage involved modifying the c++ code and debugging it interactively with the SIMULIA Structural Scenario Creation Tool.
Working on the source code, Information Architecture during stage 1,2 & interacting with the simulation tool UI gave me a thorough understanding of the product. I could better comprehend the deliverable and was able to give constructive inputs to the team during the stand-up meetings…
Also, modifying the source code's logic helped us generate the data required for displaying in the data table.
Stage 3: UI DEVELOPMENT USING HTML, CSS, JAVASCRIPT
Once we had all the data generated for the table, I started with the final stage of developing the user interface design ( I had created in stage 1). The UI was developed using HTML, CSS (BootStrap 4), and JavaScript. The table implementation involved writing a JS code for the following functionalities:
- Traversing a data table
- Comparing the cell values based on a set parameter
- Color coding the cell to red/green/white based on the parameter and condition set by the developers
- Adding a slider to vary the parameter and update the table content
This was the last stage of the assignment that involved implementing my design. Keeping the timeline in mind for stage 3, the focus was on implementing the data table with the above 4 high-priority functionalities. I would have continued to work on the CSS of the table and adding the low-priority features to the UI in the next steps.
The final week ended with the presentation of my deliverable and getting feedback from the team. Also, doing the required knowledge transfer and design handoffs to the concerned Developers.
Intrigued to mention that the code was successfully embedded in the 3DExperience dashboard and will be used by the team for performance monitoring of the tool
Working with a great team brings out the best in you… I had a great time being a part of the 3DS family and am excited to take the learnings along as I embark on my design journey. Excited to see what lies ahead…