You are on page 1of 8

Common Interview Questions

Memorized
1. Tell me about yourself?

I am a computer science graduate from Caraga State University. During my studies, I’ve
immersed myself in learning different programming languages and creating real-world projects
using them. You can open the projects listed on my portfolio website which showcases my
accomplishments through software development
To put my skills to the test, I co-founded a technology startup ScrapCycle with my friends and
we secured a 1-year startup incubation contract with Navigatu. We developed a mobile
application ScrapCycle which is available to download in playstore. ScrapCycle is an online
junkshop mobile application where people can easily trade their recyclable trash for money
(examples of recyclables are plastics bottles glass, metals, broken appliances, etc.). As of now,
ScrapCycle is operating in Butuan City with thousands of Butuanons using our app. Co-
founding ScrapCycle was a challenging but incredibly rewarding experience and I improved my
software development skills and how to communicate with mentors in Navigatu and
stakeholders, how to collaborate effectively with my team, and most importantly, make a
positive impact through technology.

2. What are your strengths and weaknesses?


Strength:
I'm a team player and have experience working effectively in both in-person and remote team
settings. I'm comfortable communicating my ideas and contributing to group discussions, as
well as providing constructive feedback to my peers.

Weakness:
My public speaking skills could be improved, especially when presenting technical concepts.
I'm working on refining my communication style and practicing presentations to become more
clear and engaging.

3. Why should we hire you?

I believe you should hire me because of my software development experience from my past
work in Navigatu and my mobile and web development skills align perfectly with your current
projects. I excel at breaking down complex problems into manageable steps and finding
creative solutions. During my thesis in college, I optimized the Ramer-Douglas-Peuker
algorithm by improving the line simplification of large and redundant time series datasets using
parallelism. I'm confident I can bring this analytical approach to your team and contribute to
your projects.

4. Do you have any questions for me?

What are the biggest challenges and opportunities associated with this position?

What are the different types of projects the development team typically works on?

Is the slot for the software developer job in Cebu branch still available?

5. WHY DID YOU QUIT NAVIGATU?


Navigatu is the leading technology business Incubator in Caraga Region. Last August 2022,
ScrapCycle won the CCIS Startup competition and Navigatu was one of the judges. They
contacted us and offered a 1-year startup incubation contract. Since then we worked at
Navigatu’s office, developing the Scrapcycle mobile application to launch it Butuan City
However, after our graduation in July 2023, two co-founders of ScrapCycle left the team for
other developer jobs. Since we were lacking team members in ScrapCycle, Navigatu didn't
renew our contract, leading ScrapCycle to become an independent startup.
I stayed with ScrapCycle until December but left to look for a job with a stable income because
my family is having financial problems and I needed a job that could provide for their needs.

6. DESCRIBE YOURSELF IN 3 WORDS


I AM CREATIVE, RESOURCEFUL AND COLLABORATIVE
• I am creative because I can translate design concepts into compelling user interfaces
and think outside the box to solve UI challenges.
• I am resourceful because I can find solutions using different technologies and libraries
when faced with unforeseen obstacles.
• I am collaborative because I communicate effectively with other developers, contributing
to a cohesive development process.

7. Why do you want to work here?

I'm drawn to Archangel’s mission of using technology to drive positive change. My passion for
software development stems from its potential to solve real-world problems and enhance lives.
My skills in developing mobile applications and websites could be helpful with your focus on
digital transformation and process optimization. I'm confident that I can contribute to your
team's efforts in seamlessly adapting businesses to change and ultimately increasing their
profitability.

8. Where do you see yourself in 5 years?


My long-term goal is to build a successful career in software development, In 5 years I see
myself constantly pushing to learn and adapt. I see (company name) as a company where I
can grow alongside its evolving needs, taking on challenging projects and contributing to its
continued success. I am open to opportunities that allow me to make a lasting impact.
NOT YET MEMORIZED

9. Tell me about a time you failed or made a mistake.


During the development of Scrapcycle app in Navigatu, I was tasked with developing the user
authentication using flutter framework and firebase. I overestimated my ability to learn it quickly
and didn't allocate enough time for thorough testing. This led to bugs and I learned a valuable
lesson about humility and realistic planning. Since then, I've adopted a more structured
approach to learning new technologies, involving tutorials, practice projects, and extensive
testing before deployment.

10. WHAT INSPIRED YOU TO BECOME A SOFTWARE


DEVELOPER?
The potential for software to make a positive impact on the world is what initially drew me to
development. Whether it's building tools that improve people's lives, developing innovative
solutions, or contributing to scientific research, coding feels like a way to use my skills for
something meaningful. For example, when we first tested the ScrapCyle app in Butuan City, I
witnessed firsthand the impact of software on people’s lives and the environment. Through the
Scrapcycle mobile application, we encourage proper waste management to Butuanons and
incentivize their recycling efforts by turning their recyclable trash into cash, leading to fewer
recyclables ending up in landfills and oceans, while contributing to the creation of new
products by recycling factories. The ScrapCycle software advocates a future where scraps
become resources and promote a more sustainable and a cleaner future—one scrap at a time.

11. WHAT ARE YOUR HOBBIES ASIDE FROM SOFTWARE


DEVELOPMENT?
I have a garden at home, and I'm passionate about gardening. It requires patience, attention to
detail, and the ability to adapt to changing conditions, which are also crucial skills in software
development. Additionally, I'm taking online courses like those on Codecademy to expand my
knowledge and stay curious and up-to-date with the latest trends in software development.

12. Tell me about a time you showed leadership?

While working on a web development school project, I noticed one of my team is struggling
with certain tasks. I took the initiative to offer guidance and mentorship, sharing my knowledge
and experience to help him overcome his challenges in connecting backend and frontend
code. I provided feedback, and encouraged him to ask questions and experiment. By taking on
this leadership role, I not only helped the team achieve its goals but also contributed to the
growth and development of my other peers.

13. Describe your leadership style.

In my previous role, I worked closely with my team members to build the ScrapCycle mobile
app. I actively participated in design discussions, sharing my research on what mobile dev
framework we should use, and helped resolve conflicts by proposing alternative solutions. We
successfully launched the platform on time thanks to effective communication and
collaboration within the team.

14. Tell me about a time you disagreed with someone?

During thesis in college, I disagreed with my teammate’s suggestion for using the
Visvalingam-Whyatt line simplification algorithm to use in our thesis. I felt that the Ramer-
Douglas-Peuker algorithm was more efficient and scalable for handling large time series
datasets. I expressed my concerns to my team respectfully, explaining my reasoning and
providing benchmarks comparing the algorithms. I was open to their feedback and willing to
consider their perspective. We had a constructive discussion, analyzing the strengths and
weaknesses of each approach. Ultimately, my teammate acknowledged the benefits of my
proposed algorithm and approved its implementation. The Ramer-Douglas-Peuker algorithm
significantly improved the data processing speed of time-series datasets and reduced resource
usage based on the results of our research.

15. Tell me about a time you had to manage conflicting priorities


or tell me about a time you had to handle pressure.
During my final semester, I had three major deadlines overlapping: a final project for my
software engineering course, a research paper presentation, and a final exam in one of my
subject. To manage these conflicting deadlines, I used Notion to visualize my tasks and break
them down into manageable chunks. I allocated specific time slots for each task for me to
complete. As a result, I successfully delivered all task on time.

16. EXPLAIN YOUR THESIS TO ME


Our thesis optimized the Ramer–Douglas–Peucker algorithm. It is an algorithm that simplifies
lines by removing points that fall within a specified tolerance, called epsilon, of a straight-line
approximation but this leads to slow execution, high computational demands, and potential
loss of data integrity when processing high-frequency and redundant time-series datasets. Our
thesis, titled "CPU Optimized Ramer-Douglas-Peucker Algorithm for Visual Analysis of Time
Series Data," aims to address these problems.
We implemented parallel computing to enhance the performance of the RDP algorithm and
incorporated dynamic epsilon, allowing for adaptive distance thresholds based on local dataset
properties to achieve line simplification while maintaining accuracy.
Our thesis successfully demonstrated a significant improvement in the running time of the line
simplification process, as evidenced by a p-value of 5.7 times ten to the sixth power (5.7xe^6)
in the Wilcoxon signed-rank test. The algorithm achieved a remarkable reduction of up to
96.88% in data points while preserving minimal variation between the original and simplified
time-series datasets.

17. HOW DO YOU APPROACH DEBUGGING AND PROBLEM-


SOLVING IN YOUR CODE?

While doing a group project. I faced a bug where a web application's search feature returned
incorrect results. I used browser developer tools to inspect network requests and pinpointed a
faulty API call. By debugging server-side code, I discovered an incorrect database query. I
fixed the query, retested the feature, and collaborated with the group to implement unit tests to
prevent similar errors in the future.

18. Tell me about a time you had to learn something quickly.

In Navigatu, we were tasked to develop the ScrapCycle mobile app and to deploy it on
PlayStore. The team decided to use Dart and Flutter which I had no prior experience with. I
was initially intimidated, but I knew I had to adapt quickly to contribute meaningfully. I started
by taking free online tutorials and courses, practicing through coding challenges, and I also
sought guidance from my senior developer and more experienced peers. Within a few weeks, I
was able to grasp the fundamentals of the language and contribute to the project's code base.
This experience taught me the importance of self-motivation, resourcefulness, and seeking
help when needed to tackle new challenges in the field of software development.
Project Presentation

Introduction

 The project I've chosen to present is the Alberto's Pizza Website.


 I selected this because it's my most recent full-stack web development project, one that
I developed entirely on my own.
 My cousin manages the Alberto's Pizza branch in Surigao City, and I observed their
heavy reliance on phone orders. This method posed challenges, especially during peak
times when managing calls became difficult. Additionally, phone orders make it hard to
track and analyze data,
 To address these issues, I redesigned the official Alberto's Pizza website and integrated
an easy-to-use online ordering feature specifically tailored to their needs.

Demo

 To showcase the functionality of the website, I will begin the demo by presenting the
landing page of Alberto's Pizza. This is the hero section featuring an image, a catchy
tagline, and a prominent 'Order Now' button.
 As we scroll down to the 'About Us' section, users can uncover the compelling story
behind Alberto's Pizza. They will learn about the history and the values that drive alberto
pizza to deliver the best pizza experience to customers.
 Next is the 'Menu' section, where users can explore a comprehensive list of pizzas
available for online ordering.
 This part showcases the best-selling pizzas at Alberto’s.
 Moving forward, this section shows the user testimonials, providing an opportunity to
read what other customers are saying about Alberto's Pizza.
 Lastly, is the 'Contact’ section where users can easily send messages by filling out the
form. I implemented the EmailJS library to facilitate the seamless sending and receiving
of emails.

How to order

 To order pizza, users simply need to click on the pizza image or the 'Order' button,
which will then redirect them to the order page.
 On the order page, users can choose the size of the pizza and add additional
ingredients or toppings to their orders.
 After clicking the 'Add to Cart' button, they can then open the cart page by clicking the
cart icon.
 This is the cart page where users can view the details of the pizza they are about to
order. The pizza name, price, extras, quantity, and total are displayed here.
 To proceed with their orders, users have the option to pay through PayPal or choose
cash on delivery.
 I tried searching for GCash libraries that could be used with React.js but I couldn't find
one. That is why I decided to use PayPal instead as an opportunity to learn how to
integrate online payment options into the website.
 Once users have completed their selected payment method, they will be redirected to
the 'Track Order' page where they can monitor the progress of their order.

Admin Page
 If an admin wishes to add a pizza to the menu or track customer orders, they simply
need to enter their login details to access the admin dashboard.
 This is the admin dashboard, currently featuring two pages: 'Menu' and 'Order List.'"
 In the 'Menu List,' administrators can add a new dish to the menu and also remove one
from the list.
 On the 'Customer Orders' page, administrators can view the list of orders, change the
status of each order (such as 'preparing,' 'on the way,' and 'delivered'), and delete
orders as needed.
 They can also click on the 'Logout’ option to exit the admin page.
 The Alberto’s Pizza website is still under development and other important features will
be added in the future to enhance and expand the website's functionality.

Technologies Used
 And I’m going to explain the technologies I used. To streamline the development
process, I leveraged Next.js for its page-based routing system. I set up a MongoDB
database to store and retrieve data. I also implemented Redux to manage state across
different components. I created RESTful APIs for seamless communication between the
front-end and back-end, enabling data exchange within the Next.js application. Finally, I
deployed the application to Vercel and ensured proper setup and accessibility of the
MongoDB database for the deployed application.

You might also like