153 lines
6.5 KiB
TypeScript
153 lines
6.5 KiB
TypeScript
import { Building2, Calendar, GraduationCap, MapPin, Microscope, Wrench } from 'lucide-react';
|
|
|
|
const Experience = () => {
|
|
const BoldStyle = "text-blue-900 dark:text-blue-400 font-semibold";
|
|
|
|
const experiences = [
|
|
{
|
|
title: "Experienced Developer (DevOps)",
|
|
company: "Ericsson",
|
|
location: "Jorvas, Finland",
|
|
period: "November-2022 - Present",
|
|
responsibilities: [
|
|
"Managing and optimizing Kubernetes clusters in production environments",
|
|
"Designing and implementing CI/CD pipelines for end to end product development flow using Jenkins",
|
|
"Automating infrastructure deployment using Terraform and Ansible",
|
|
"Develop and maintain monitoring solutions of various resources for greater observability and troubleshooting",
|
|
"Actively support development teams regarding product development flow and infrastructure issues",
|
|
"Develop and perform automated end-to-end product testing with Python, Robot Framework, Jenkins, Bash, etc.",
|
|
],
|
|
tools: "Kubernetes, Docker, KVM, Openstack, Ansible, Terraform, Prometheus, Grafana"
|
|
},
|
|
{
|
|
title: "Test Engineer",
|
|
company: "Nokia",
|
|
location: "Espoo, Finland",
|
|
period: "June-2021 - October-2022",
|
|
responsibilities: [
|
|
"Develop and maintain Cloud RAN E2E test setup for vCU and vDU application testing on top of RedHat Openshift",
|
|
"Develop automation and CI/CD flow for Cloud RAN testing using Python, Robot Framework, Bash, Jenkins etc.",
|
|
"Develop and perform automated testing to validate the functionality of Nokia Cloud RAN base stations",
|
|
"Integrate new hardware and software into the test setup",
|
|
"Perform hands on debugging and log analysis to nd root cause and solve any software or hardware issues",
|
|
],
|
|
tools: "Keysight Nemo Outdoor, Nemo Analyze, Qualcomm PCAT, QCAT, QXDM"
|
|
},
|
|
{
|
|
title: "Testing and Prototyping Intern",
|
|
company: "GE Healthcare",
|
|
location: "Helsinki, Finland",
|
|
period: "Jan-2019 - May-2021",
|
|
responsibilities: [
|
|
"Planning, writing, and performing manual and automated tests of different prototype wireless medical devices",
|
|
"Designing driver and PCB circuits in Altium Designer to test the performance of the Digital Sensor Interface",
|
|
"Ensuring the PCB componets used in the devices are EU RoHS and REACH compliant",
|
|
],
|
|
tools: "LTSpice, Altium Designer, HP-ALM, Vector Network Analyzer, Spectrum Analyzer, Climate Chamber"
|
|
}
|
|
];
|
|
|
|
const education = [
|
|
{
|
|
degree: "Master's in Wireless Communication & RF Systems",
|
|
institution: "Tampere University",
|
|
location: "Tampere, Finland",
|
|
period: "2018 - 2020",
|
|
thesis: "5G Reference Signals and their Possibility to be for 5G Based Positioning"
|
|
},
|
|
{
|
|
degree: "Bachelor's in Electrical & Electronic Engineering",
|
|
institution: "Khulna University of Engineering & Technology",
|
|
location: "Khulna, Bangladesh",
|
|
period: "2013 - 2017",
|
|
thesis: "Density-based smart traffic control system using Canny edge detection technique using Digital Image Processing"
|
|
}
|
|
];
|
|
|
|
return (
|
|
<div className="p-4 max-w-4xl mx-auto">
|
|
<h2 className="text-3xl text-blue-900 dark:text-blue-400 py-4 font-medium font-burtons text-center">
|
|
Experience
|
|
</h2>
|
|
|
|
<div className="space-y-8">
|
|
{experiences.map((exp, index) => (
|
|
<div key={index} className="border-l-4 border-blue-900 dark:border-blue-400 pl-4 space-y-2">
|
|
<div className="flex items-center gap-2">
|
|
<Building2 className="text-blue-900 dark:text-blue-400" size={24} />
|
|
<h3 className={`text-xl ${BoldStyle}`}>{exp.title}</h3>
|
|
</div>
|
|
|
|
<div className="flex flex-col md:flex-row md:items-center gap-2 md:gap-6 text-gray-600 dark:text-gray-400">
|
|
<div className="flex items-center gap-1">
|
|
<Building2 size={16} />
|
|
<span>{exp.company}</span>
|
|
</div>
|
|
<div className="flex items-center gap-1">
|
|
<MapPin size={16} />
|
|
<span>{exp.location}</span>
|
|
</div>
|
|
<div className="flex items-center gap-1">
|
|
<Calendar size={16} />
|
|
<span>{exp.period}</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="text-gray-800 dark:text-gray-300 space-y-1">
|
|
{exp.responsibilities.map((resp, idx) => (
|
|
<p key={idx} className="flex items-start">
|
|
<span className="mr-2 mt-2 ml-4">•</span>
|
|
<span>{resp}</span>
|
|
</p>
|
|
))}
|
|
</div>
|
|
<div className="text-gray-800 dark:text-gray-300 space-y-1 flex items-start">
|
|
<div className='flex items-center gap-2'>
|
|
<Wrench size={20}/>
|
|
<span>{exp.tools}</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
))}
|
|
</div>
|
|
|
|
<h2 className="text-3xl text-blue-900 dark:text-blue-400 py-4 mt-8 font-medium font-burtons text-center">
|
|
Education
|
|
</h2>
|
|
|
|
<div className="space-y-6">
|
|
{education.map((edu, index) => (
|
|
<div key={index} className="border-l-4 border-blue-900 dark:border-blue-400 pl-4 space-y-2">
|
|
<div className="flex items-center gap-2">
|
|
<GraduationCap className="text-blue-900 dark:text-blue-400" size={24} />
|
|
<h3 className={`text-xl ${BoldStyle}`}>{edu.degree}</h3>
|
|
</div>
|
|
|
|
<div className="flex flex-col md:flex-row md:items-center gap-2 md:gap-6 text-gray-600 dark:text-gray-400">
|
|
<div className="flex items-center gap-1">
|
|
<Building2 size={16} />
|
|
<span>{edu.institution}</span>
|
|
</div>
|
|
<div className="flex items-center gap-1">
|
|
<MapPin size={16} />
|
|
<span>{edu.location}</span>
|
|
</div>
|
|
<div className="flex items-center gap-1">
|
|
<Calendar size={16} />
|
|
<span>{edu.period}</span>
|
|
</div>
|
|
</div>
|
|
<div className="text-gray-600 dark:text-gray-400 space-y-1 flex items-start">
|
|
<div className='flex items-center gap-1'>
|
|
<Microscope />
|
|
<span>{edu.thesis}</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
))}
|
|
</div>
|
|
</div>
|
|
);
|
|
};
|
|
|
|
export default Experience; |