diff --git a/components/main/experience.tsx b/components/main/experience.tsx index 9678ef8..26b9fd0 100644 --- a/components/main/experience.tsx +++ b/components/main/experience.tsx @@ -8,18 +8,19 @@ import { } from "react-vertical-timeline-component"; import { parseStringWithBold } from "@/lib/utils"; -import { EXPERIENCES } from "@/constants"; +import { JOB_EXPERIENCES, EDUCATION_EXPERIENCES } from "@/constants"; import { textVariant } from "@/lib/motion"; import "react-vertical-timeline-component/style.min.css"; import { useInView } from "react-intersection-observer"; type ExperienceCardProps = { - experience: (typeof EXPERIENCES)[number]; + experience: (typeof JOB_EXPERIENCES | typeof EDUCATION_EXPERIENCES)[number]; + position?: "left" | "right"; }; // Experience Card -const ExperienceCard = ({ experience }: ExperienceCardProps) => { +const ExperienceCard = ({ experience, position }: ExperienceCardProps) => { const { ref, inView } = useInView({ threshold: 0.5, triggerOnce: true }); return ( @@ -29,13 +30,14 @@ const ExperienceCard = ({ experience }: ExperienceCardProps) => { date={experience.date} iconStyle={{ background: experience.iconBg }} visible={inView} + position={position} icon={
{experience.company_name} @@ -49,20 +51,29 @@ const ExperienceCard = ({ experience }: ExperienceCardProps) => { className="text-secondary text-[16px] font-semibold" style={{ margin: 0 }} > - {experience.company_name} + {experience.name}

{/* Experience Points */} - + {"points" in experience && ( + + )} + + {/* cgpa */} + {"cgpa" in experience && ( +

+ CGPA: {parseStringWithBold(experience.cgpa)} +

+ )}
); @@ -94,11 +105,26 @@ export const Experience = () => { {/* Experience Card */}
- {EXPERIENCES.map((experience, i) => ( + {JOB_EXPERIENCES.map((experience, i) => ( ))}
+ + +

+ Education Experience. +

+
+ + {/* Experience Card */} +
+ + {EDUCATION_EXPERIENCES.map((experience, i) => ( + + ))} + +
); }; diff --git a/constants/index.ts b/constants/index.ts index a8ef5db..eb9eb0a 100644 --- a/constants/index.ts +++ b/constants/index.ts @@ -22,22 +22,38 @@ export const SERVICES = [ }, ] as const; -export const EXPERIENCES = [ +export const EDUCATION_EXPERIENCES = [ { - title: "Self-Employed", - company_name: "Wordpress Content Creator/Developer", + title: "B.Sc. in Computer Science and Engineering", + name: "Brac University", + icon: "bracu.webp", + iconBg: "#E6DEDD", + date: "Jan 2020 - Jan 2024", + cgpa: "**3.82**", + }, +] as const; + +export const JOB_EXPERIENCES = [ + { + title: "Full Stack Web Developer", + name: "Tekinouchi", icon: "tekinouchi.png", iconBg: "#E6DEDD", - date: "Feb 2019 - Jul 2023", + date: "Jan 2023 - Present", points: [ - "Delivered high-quality, insightful, informative, and entertaining written content.", - "Set up the hosting environment in **AWS EC2, Lightsail** and custom **cpanel hostings**.", - "Implemented automated scraping using **Selenium** python library and published content using **wordpress REST API.**", + "Maintained strong skill set in various technologies to update, optimize and rectify issues with corporate website.", + "Maintained version control systems such as **Git** in order to keep track of changes made to the source code.", + "Provided technical support and troubleshooting services when needed.", + "Designed creative user interfaces for websites with a focus on usability", + "Developed, tested and debugged web applications using **HTML5, CSS3, JS and Laravel**", + "Modified existing WordPress plugin or theme to add functionality.", + "Configured databases such as **MySQL** in order to store data securely", + "Integrated **third-party APIs** into web applications for enhanced functionality", ], }, { title: "Frontend Web Developer", - company_name: "Fiver", + name: "Fiver", icon: "fiver.png", iconBg: "#383E56", date: "Feb 2023 - Jul 2023", @@ -49,20 +65,15 @@ export const EXPERIENCES = [ ], }, { - title: "Full Stack Web Developer", - company_name: "Tekinouchi", + title: "Self-Employed", + name: "Wordpress Content Creator/Developer", icon: "tekinouchi.png", iconBg: "#E6DEDD", - date: "May 2023 - Present", + date: "Feb 2019 - Jul 2023", points: [ - "Maintained strong skill set in various technologies to update, optimize and rectify issues with corporate website.", - "Maintained version control systems such as **Git** in order to keep track of changes made to the source code.", - "Provided technical support and troubleshooting services when needed.", - "Designed creative user interfaces for websites with a focus on usability", - "Developed, tested and debugged web applications using **HTML5, CSS3, JS and Laravel**", - "Modified existing WordPress plugin or theme to add functionality.", - "Configured databases such as **MySQL** in order to store data securely", - "Integrated **third-party APIs** into web applications for enhanced functionality", + "Delivered high-quality, insightful, informative, and entertaining written content.", + "Set up the hosting environment in **AWS EC2, Lightsail** and custom **cpanel hostings**.", + "Implemented automated scraping using **Selenium** python library and published content using **wordpress REST API.**", ], }, ] as const; diff --git a/public/experiences/bracu.webp b/public/experiences/bracu.webp new file mode 100644 index 0000000..30feae9 Binary files /dev/null and b/public/experiences/bracu.webp differ