Introduction
My name is Ruicheng Wu, with a close English pronunciation, I go with Richard for my first name. My home city is Chongqing, China where a region that would leave impression with mountain city, numbing spicy cuisine (Hot Pot, Mapo Tofu, etc.), and in proximity to visit hometown of Panda (“bearcat", what we called in our languages). And of course, I enjoyed all those elements when I got the chance to grow up there. Also, I enjoy bicycle riding, swimming, alpine skiing, watching anime, board gaming, and playing guitar as part of my favorite indoor activities.
My path with Computer Science was tracing back to my high school time where I enjoyed playing Warcraft III custom RPG map with friends. One of the RPG was about role playing characters from Dragon Ball to customize the experience from the begin of the story to the end. The richness of the content and strategy involved in it were incredibly attractive to me and I was inspired to think how I would customize the RPG itself so to provide a unique experience to me and my friends based on some feedback we had towards it. Hence, I started with learning the map editor, the supported programming languages (JASS) and made some updates to the existing mechanism of the RPG.
I viewed this as the beginning of my career path, my curiosity drove me to start, my passion helped me sustain myself through the many head-scratching moments until I reached the goal. In the spirit of passion driven mindset, my entire career path is filled with chances to solve a problem in grand scheme of learning new tools as well as reflection of how I would approach it nowadays. To build web platforms with gamification elements, I studied Adobe Illustrator, Animate CC (previously Flash) to make robust animation assets and converted them into assets that can suit in Web platform.
A few years from that with more knowledge and updated tools, I chuckled to myself that I could achieve the same goal with combining technology of CSS and native HTML SVG in a much-simplified way. I am consistently adoring how I chose to engage with solving a problem whereas the actual thing itself matters less a lot.
My current title is senior attending architect, I work in a life science consulting company to help my team provide solutions to our client partners via digital form. One of them is web platform development, I start my day with a new idea or previously paused thoughts. I usually find myself multi-tasking across different domains such as I was just helping a Frontend User Interface development and then I would jump on a call with team to discuss the potential helpful enhancements to our existing apps. Sometimes I was just swapping from one programming language to another and then found myself stuck in applying a “for loop” where the syntax varies, and I brought the old way of thinking into the context. It is a dynamic environment and I enjoy how I am bringing into it given all the support I can receive from my company.
Computer Science Fellow
career options
In my current company we encourage folks to leverage their vision into seeing the full picture of what they are responsible for and thus everyone in my industry is advocating to be fully stacked. Despite of that, I am providing some career options from what I have known about in this industry.
Software developers create and develop computer programs and the underlying systems that run control networks. They plan the entire development process for a software program and give instructions to programmers who will write the code. Such as analyzing user needs to inform the process of designing, testing, and developing software to address them. Collaborating with other computer specialists to create optimum software. Designing applications or systems and planning how they will work together.
Web developers are the creative masterminds behind maintaining websites to fit a client’s needs. They optimize a website’s performance and capacity, as well as content creation. Such as technical construction of the website. Creating the basic framework of the website and ensuring functionality. Creating technical features for a website’s look. Developing and integrating website layout, graphics, and application.
Database administrators focus on monitoring database performance. They do this by utilizing software to store and organize data. Database administrators may perform the following job responsibilities: Backing up and restoring data to prevent data loss. Ensuring organizational data is secure. Identifying users’ needs to create and administer databases. Operating databases efficiently and testing modifications to database structure.
A web designer oversees the design, layout and look of a website. Web designers often carry out the following tasks: Meeting with clients to discuss design and functionality of a website. Creating and testing applications, interfaces, and navigation menus for a website. Using programming languages to write code for the website. Working with graphic designers to determine the website’s layout.
Computer Science Fellow
skills
What are the main hard skills you use on a daily basis in your current job?
Part of my main responsibility is to support software development across different domains. When it comes to actual programming, I built a strong muscle among the languages, concepts I applied in work and shaped how I engage things in out of office life. Web development using HTML5, CSS as foundational knowledge and so leverage the app using React framework for the advantages of efficient development and scalable productivity. Designing and developing RESTful API end points for business logic using Typescript even more strengthening the Object-Oriented programming principle from school to life that my inclination of identifying themes over things get a lot of chance to practice.
It took a lot of sweat and tears to be a decision maker on the database to use for different projects. So far, our team has used both SQL and NoSQL databases to support our projects where system logging information, core records, direct non-essential operation are distributed across different databases. The muscle I get to build to operate with each of the databases is getting stronger and stronger each time.
As cloud computing services become a huge thing of software development, it is almost unavoidable to use some of those services for startup companies. One of the use case scenarios being the development of a project is quality assured and ready-to-launch, there comes the deployment process to be publicly, privately, protected viewable. I had the pleasure of facilitating some of the services pipeline we inherited as well as pioneering innovative approaches to support such workflow with a cost-efficient, smoother way.
What are the main soft skills you use on a daily basis in your current job?
Bringing into things with kindness, fearless and empowerment mindset. Extend kindness to self and others by practicing pulling through it consistently and congruently. Not personalizing fears and anxieties and embracing we are more similar than we are different. Empowering self to normalize judgmental thoughts and turns inward to ground in humility. Although I would face up to fear walking down the memory lane, with the many living examples as guidance and great buddy system support, I find myself sailing through the sea eventually with a peaceful mind.
Choosing to take away inspirations from people to remind the meaning of mantle of responsibility when my mind drifts away. I am grateful for the high intensity of great opportunities to practice attention to details from conducting cloud-based infrastructure operations to single feature upgrades as well as active listening, engagements. Extend gratitude and pay it forward for the environment to encourage people kindly, fearlessly, empowered to employ strategic thinking. Employing stepwise approach to achieve a relative far goal and practice theme identification across different scenarios and turning learnings into actions to support team moving towards a helpful direction.
Take every opportunity to practice reading, writing, non-verbal modalities. By consistently reminding myself of learnings from the past and continuing to employ approaches that may look tough for the present but scalable for future will pulling through the mindset pillars. Proactively looking forward to providing concise and engaging feedback with other people. Being aware of the great buddy support received every day so I could share my thought process, journey, mental maze I walked, "dragons"(challenge) slayed along the way. Applying my independence from years accumulation to take down challenges with the power of belief, back-to-back support, unconditional trust solidly built.
Ruicheng
’s personal path
Tell us about your personal journey in
Computer Science Fellow
:
I started my career path as an internship by the chance of taking the same summer class with the team lead, we had developed trust over various team projects worked together. Previously, I had applied for different job interviews and attended various recruiting camps at school, and I rarely heard back from a few of them with some online preliminary steps of interview. That period was one of the darkest times in my life. Then one school day, in class we came across a topic about internship opportunity. Then I got the chance to start my journey as an internship and kept sharpening my hard and soft skillset with countless head scratching moments over projects, doubts of myself, passion driven motivations etc.
Now I am looking at the period for my job searching. I consider it as an incredible reminder to emphasis my appreciation of how this bridge was established for me connecting to my career. I may miss the chance if any of my preparations were absent such as academic settings with proficiency in school projects, knowledge; the mindset to face up challenges with a courageous heart and embrace the fact that I am not the smartest person in a room.
What would you tell your younger you regarding building your current career?
If there is such chance I could rewind my time back to my school time, I would share to myself by emphasizing balancing network and academic settings where I was pivoting way more over in the latter by crushing GPA as well as school projects. My nowadays experience is networking is a such a critical part to practice soft skills and relationship building which are equally important as in career path development.
Final thoughts & tips
In my limited years over my carer path, I would like to share my opinion about letting the curiosity of exploration in Computer Science field fly as high much as possible and converting the excitements into more concrete thoughts, planning. Then it is vital to sustain and convert the thoughts into actions. It is easy to have a thought and get motivated mentally, but the challenging part is putting it into action to do it! I reflect on my journey that it is the moments I stepped out of my comfort zone that made me proud.
Resources to dig in more
CSS Tricks
A comprehensive guide covering nine types of lengths that CSS uses to size elements in terms of dimensions, space, time, and even sound.
Github
There are plenty of great open resources projects on Github. Let it be a good companion on the Lonewolf journey sometimes you may find yourself in.
Stackoverflow
Focus on we are far more similar than we are different when a unique question pops up and you can piece together a solution with gathering different resources and the great learnings provided along the way.
Mozilla Web API Docs
When writing code for the Web, there are a large number of Web APIs available. Below is a list of all the APIs and interfaces (object types) that you may be able to use while developing your Web app or site.
Regex101
A tool for creating and testing Regular Expressions.