Spiking Neural Networks (SNNs) are a type of neural network that more closely mimic the behavior of biological neurons by transmitting information through discrete spikes over time. Unlike traditional artificial neural networks, SNNs incorporate temporal dynamics and can process spatiotemporal data with high energy efficiency, making them well-suited for event-based and neuromorphic computing. One key challenge in Spiking Neural Networks is developing effective learning algorithms that can handle temporal credit assignment and sparse, non-differentiable spike events. In my research, I aim to address these limitations by exploring improved training methods and architectural designs that enhance the learning capabilities and efficiency of SNNs.