scientific data analyst

Photo

OLGA KRUKOVA

Contact information:

Tel: +380957248791

Email to: Olga Krukova

Telegram: send a message

Discord: OlgaKrukova(@lokispirit)

About:

Goal: To become a scientific data analyst

Priorities:

  • interesting, creative work
  • decent salary
  • the opportunity to develop myself in other IT or data analysis areas

Education:

Odessa National University of Technology

Management

September 1999 - June 2004 | Ukraine

Odessa State Environmental University

Oceanology

September 2011 - June 2016 | Ukraine

Courses:

RSSchool JavaScript / Front-end Course Pre-school

August 2023 - November 2023 | Ukraine

JavaScript / Front-end Course Mentoring Program EN

November 2023 - July 2024 | Ukraine

React Course

July 2024 - in progress | Ukraine

Work experience:

Sale Manager

September 2004 - November 2011 | Ukraine

Tech Skills

  • JavaScript
  • React
  • HTML5
  • CSS3

Code example:

                                    
export const ProductCard = ({ product, dataTestid }: CardType) => {
const navigate = useNavigate();
const [error, setError] = useState('');
const [imageURL, setImageUrl] = useState('');
const [price, setPrice] = useState(0);
const [currency, setCurrency] = useState('USD');
const [discount, setDiscount] = useState('');
const [priceWithDiscount, setPriceWithDiscount] = useState(0);
const cart = useCartStore((state) => state.cart);

useEffect(() => {
const { url } = product.masterVariant.images[0];
if (url) {
setImageUrl(url);
} else {
setImageUrl('./default-card-background.jpg');
}
const { value, discounted } = product.masterVariant.prices[0];
const priceValue = value.centAmount / 10 ** value.fractionDigits;
setPrice(priceValue);
setCurrency(value.currencyCode);
if (discounted) {
const priceDiscounted = discounted.value.centAmount / 10 ** discounted.value.fractionDigits;
setDiscount(((1 - discounted.value.centAmount / value.centAmount) * 100).toFixed(0));
setPriceWithDiscount(priceDiscounted);
}
}, [product]);

const clickHandle = useCallback(async () => {
try {
const productItem = await getProductByKey(product.key);

if (productItem) {
navigate(`/catalog/${productItem.key}`);
} else {
throw new Error('Not found');
}
} catch (err: unknown) {
if (err instanceof Error) {
const errMsg = err.message;
setError(() => errMsg);
}
}
}, [navigate, product.key]);
                                
                                

Languages

  • Ukrainian - Native
  • Russian - Native
  • English - Intermediate