Design Process

Role & Experience

I have been in the tech field for over 16 years, and I consistently experience a key problem in the workplace. Researchers, Designers, and Engineers are not prepared for their future within their careers. Leaders are not being effective mentors in showing the next generation how to position themselves early on to the next level of their careers. I know because I experience it. I have heard stories from countless leaders who have experienced the lack of proper mentorship. I wanted to create a space where all these things can come together. Researchers, Designers, and Engineers need a space to come together, share their work, and collaborate. Potential recruiters can come and connect, creating connections for possible interviews. As the tech industry changes, resources can be provided to help businesses adapt to the changes. Whether full-time or freelance, the[COMMUNITY] will be the place.


Welcome to the[COMMUNITY]

I wanted the space to be a social media app where creatives can interact with one another by sending messages and liking each other's work. I began looking at Facebook, X, and Instagram, etc., to see the standard features and functionalities that are common to implement into my platform. I wanted creatives to be able to upload their work for viewing. That is where sites like Pinterest and Behance came along. I decided to create a masonry grid. I wanted layouts to be straightforward because I knew that coding the app was where I was going to see the most challenges.

Research

I wanted to create an app that integrated Behance, Muzli, Facebook, X, and Instagram. These are the media platforms that I began to research. While looking through the apps, I started documenting the features and functionalities that I wanted to create for the [COMMUNITY] app. What I saw in common were features for users to like a post, message the creator of the post, and follow them. Muzli was different. You get a lot of inspiration for design content that gives us more articles on design and other areas of interest. I like that. These are the things that I documented and noted for implementation.

Design Decision & Rationale

The [COMMUNITY] is designed for researchers, designers, and engineers. I didn't find an app that caters to all 3 of these groups. I decided to create an app that solved this need. The tech market is a lot different now than where I started. Companies initially were actively seeking engineers, but over time, designers and researchers became part of the space. People who wanted to get into tech did not have to learn to code. Engineers didn't particularly need a degree, as we saw coding camps popping up everywhere. That has now died down. There are so many researchers, designers, and engineers now that companies don't have to make a mad dash to hire these groups. They can pull them from the sea. Now, we see competition happening. You have to be able to market yourself now. Marketing is one area that has stayed consistent and has never gone away. This platform will serve that purpose for creatives to market themselves and have recruiters find them. Creatives can enjoy all the features that we see from the other platform on one platform. the[COMMUNITY] goes further to help you stay relevant on the best practices to create your portfolio, prepare for interviews, and show your skills to everyone.

Creating Your Post

Creatives can create or edit an existing post that can be viewed publicly online. When providing content, I wanted the information to be concise so that your work can draw attention. The content is meant to provide insight into your creation and its purpose. If you have a personal website, you can give the link to the work on your website for people to get the whole story. Once you have posted your work, it will be placed in the universe for everyone to see. While the post is in the universe, you can place additional images on the page, creating a gallery of images related to the work, send a message, and like the page.


Your Profile

Being a part of the[COMMUNITY] comes with features that you can access within your profile. The profile is a view for others to see more about you. The key features that you have access to in your profile are the ability to follow other creatives, and they can follow you back. You can also upload images to your profile to show more of your interests and pictures of yourself actively working on projects. These features and functionalities provide an opportunity to express yourself. You can constantly update your profile as much as you like. Could you update your username or password to keep your profile up to date and secure? Yes, you can. I implement custom validations to check if the preferred username already exists and encryption/decryption features to keep your password safe. Viewers will not miss out on your latest post, which can be seen within your profile. Make sure you stand out by placing a creative profile image to attract viewers. Also, upload a custom banner to your page to invite other creatives and employers to explore your creative world and showcase your skills.


Challenges & Solutions

Scaling & Maintenance

My challenge in creating the platform was coding everything. I never developed an app as significant as this one, so I had to figure out the best method to ensure it could scale and be maintained. I kept the design layout simple and focused more on structuring the code. When it comes to viewing pages —for example, the profile page —I had to make sure the page checked whether the viewer was the page's owner. If the viewer owns the page, certain restrictions must be applied, such as removing the Follow Me button, while also providing a link to update their profile. I didn't want to create many pages, so I would make one page that could serve multiple functions. When a creative creates or edits a post, I create a single page that can handle both. A lot of testing had to be performed when choosing this method to ensure that the correct data is being requested from the database.

Session & Cookies Controls

This process was challenging because I wanted to make sure that creatives can safely and securely log into the platform. Initially, I was using sessions to handle the different users who log into the app, but there was a problem. As long as the users have their browser running, the session will stay active. There was another problem that I had to solve in the session. Sessions remain active as long as the browser is showing activity. Sessions have a timer, so when the browser has no user activity, the session will end, and you will have to log in again. This isn't very pleasant. It wasn't enjoyable for me either, but I tolerated it. I know users would have no patience for this method. It is common that once a user logs in, they will stay active. Cookies were implemented to solve this problem. As a matter of fact, for security purposes, I continued to use sessions, but when the session has ended, a cookie will be created. For safety, the cookie ensures that the same user is accessing the page. If anyone tampers with the cookie, the page is programmed to detect the change and immediately destroy it.

Results & Impact

Maintainability and scalability are the main factors. The coding makes the difference because everything is controlled by the requested data type, which determines how the page will be formatted. Instead of creating three different files to create, edit, or delete a post, I made one file. The page will read the user's request and load the page setup. When the page does not see a title in the database, the app will format the page for the user to create a new post; otherwise, it will format the page for editing and provide an option to delete the post. The entire app contains no more than 10 files. About 98% of the app is fully data-driven.

Final Reflections

What's Next

There are several other features that I am working on to add to the app. Currently, users cannot upload videos. I want to add a video feature. Also, I want to implement AI tools on the platform to help provide content to interested creatives and employers, strengthening communication. Lastly, I want to create the[COMMUNITY] so that the platform can target iOS and Android devices. I hope the creatives and employers find it useful, so I can make the [COMMUNITY] and its entity of its own.