Dynamic and results-driven Bilingual IT Support Specialist (Native French, Intermediate-Advanced English) with expertise in network administration, IT support , and troubleshooting across macOS, Windows 10/11, and Linux. Microsoft Azure Certified (AZ-900) with hands-on experience in cloud technologies and a DEC in Information Technology. Skilled in managing Windows 10/11 and Linux environments, providing remote IT support, and resolving technical issues efficiently.
Experienced in Cisco network configuration (routing, switching, HSRP, IPSec tunnels, VLANs, Trunking, STP, EtherChannel, OSPF, EIGRP) and proficient in networking protocols such as TCP/IP, DNS, DHCP, VoIP, WAN, LAN, VPN, and wireless infrastructure with WLC and Access Points. Strong background in data backup/recovery, firewall management, systems optimization, and network automation with Ansible. Familiar with ticketing systems like ServiceNow and Jira, ensuring timely issue resolution and seamless user support.
Proven ability to streamline processes, enhance operational efficiency, and improve user experience through technical solutions. Strong communicator with exceptional team collaboration skills, able to work effectively with colleagues and end-users to implement optimal solutions. Passionate about staying ahead in technology, continuously expanding expertise in cloud computing and network infrastructure. A proactive problem-solver who thrives under pressure, committed to delivering results and contributing to a dynamic IT team.
1- Familiarity with virtualization and cloud technologies (Azure, AWS)
2- Windows 10, 11 Administration (Active Directory Domain), Data Backup and Recovery
3- Automation & Scripting:
4- Technical Support & Ticketing:
5- Database Management & Backup:
6- Server Administration:
Available upon request
I- Project I Achievement:
Advanced Drone Control System with Facial Recognition and Real-Time Keyboard Commands (Bilingual French & English)
Skills and Technologies Utilized:
Final Code:
from djitellopy import Tello
import cv2
from pynput import keyboard
from time import strftime, sleep
import os
# Initialize Tello drone instance
tello = Tello()
# Initialize OpenCV's face detector
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
# Function to connect and check drone battery
def connect_drone():
tello.connect()
battery = tello.get_battery()
print(f"Battery level: {battery}%")
if battery print("Battery level too low for flight.")
return False
return True
# Function to take a picture
def take_picture(img):
timestr = strftime("%Y%m%d-%H%M%S")
image_folder = 'Resource/Images'
if not os.path.exists(image_folder):
os.makedirs(image_folder)
image_file = f"{image_folder}/image_{timestr}.jpg"
cv2.imwrite(image_file, img)
print(f"Captured photo: {image_file}")
# Function to handle key presses
def on_press(key):
try:
if key == keyboard.Key.up:
tello.move_up(30)
elif key == keyboard.Key.down:
tello.move_down(30)
elif key == keyboard.Key.left:
tello.move_left(30)
elif key == keyboard.Key.right:
tello.move_right(30)
elif key.char == 'f': # Move forward
tello.move_forward(30)
elif key.char == 'b': # Move back
tello.move_back(30)
elif key.char == 'm':
tello.rotate_counter_clockwise(30)
elif key.char == 'c':
tello.rotate_clockwise(30)
elif key.char == 'w' and tello.get_height() > 100: # Flip forward, check height
tello.flip_forward()
elif key.char == 'y' and tello.get_height() > 100: # Flip left, check height
tello.flip_left()
elif key.char == 'p':
frame_read = tello.get_frame_read()
img = frame_read.frame
take_picture(img)
elif key.char == 'o':
tello.rotate_clockwise(180) # Rotate 180 degrees
except AttributeError:
pass
# Function to handle key releases
def on_release(key):
if key == keyboard.Key.esc:
# Land the drone and end program when 'ESC' is pressed
tello.land()
tello.end()
return False
# Initialize connection
if connect_drone():
tello.takeoff()
sleep(5)
tello.streamon()
sleep(2)
listener = keyboard.Listener(on_press=on_press, on_release=on_release)
listener.start()
frame_width = 640 # Reduce resolution for better performance
frame_height = 480
while True:
try:
frame_read = tello.get_frame_read()
img = frame_read.frame
if img is None or img.size == 0:
continue
img = cv2.resize(img, (frame_width, frame_height))
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.1, 4)
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
face_center_x = x + w // 2
face_center_y = y + h // 2
error_x = face_center_x - frame_width // 2
error_y = face_center_y - frame_height // 2
tolerance = 30
if abs(error_x) > tolerance:
if error_x > 0:
tello.move_right(20)
else:
tello.move_left(20)
if abs(error_y) > tolerance:
if error_y > 0:
tello.move_down(20)
else:
tello.move_up(20)
cv2.imshow("Tello Camera", img)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
except Exception as e:
print(f"Error: {e}")
continue
cv2.destroyAllWindows()
listener.stop()
tello.land()
tello.end()
II- Project II Achievement
“Design and Deployment of a Secure and Automated Multisite Network Infrastructure for Collège Boréal”
Please find below the links to the project documentation (French Version)
https://1drv.ms/p/c/88f306bbe4afdaca/EfqwT6X5D-NDj35Lle9Y9qQBTV7YZ0DsAGgeTpusKnZ2tg?e=OLOnvW&nav=eyJzSWQiOjI1NiwiY0lkIjo0NjgwMzc4OX0
Project Simulation using Packet Tracer (French Version)
In order to open this file, Packet Tracer must be installed on your device and download the file before opening it
https://monboreal-my.sharepoint.com/:u:/g/personal/300141258_monboreal_ca/ET0tutGswM1HpvO1uFys_T8BsAZqrH-RTEnLg1LsjoxFaA?e=wRYFwO