This explanation is probably just a detailed expansion on what @Torbach recommended.
Try to think in terms of blocking large, to refining small. Get a general idea of what you want for an effect (weapon trail, explosion, ambient looping stuff, etc.) then search for reference or inspiration. Identify what you think you will need for the effect; things like meshes, vector fields, and the like, but not textures. Now, what are the biggest or most important parts of the effect? What gives it that identification and main silhouette? Build out what you need for those big parts, if you’re doing simulations for an explosion, keep your voxel density and render times low and focus on the timing and look of your sim. Export that at half resolution, or model your weapon trail mesh quick and blocked out with proper UVs, but save your files so you can refine them later. For non-sim textures, just make them greyscale with the general shape you think you’ll need (it may not have the look you want once it gets moving). Throw those assets into your game engine and make some materials that will do the minimum you’ll require of them (this is assuming you don’t have a studio or personal master material you are already very familiar with).
When you get to your particle system, same thing: you want to think of big and general blocking. Get the meat of your effect in and don’t worry about little sparks and multiple flare variations. Try and do things in single values ex: your particles in each emitter all have the same lifetime, size, a single burst number, simple color/alpha over life, same velocity, etc. Refine that effect with delays and layer the elements how you want them with sorting order and timing. Now move on to variation in the those emitters. I personally stick with my initial ranges and methodically test ranges above and below it with single values until I start to stray away from the look I want, and then move to the other end of the spectrum for that value. As an example, say your main value for Lifetime is 1 second for a given particle. Keep that first number you’re happy with saved somewhere and slowly lower or raise that number until you start to lose that look you first had. That is now the Min/Max in your lifetime range; rinse and repeat for the other end of that range and now you’ll have something like Min: 0.83 and Max: 1.47 sec.
Now apply that process to the other areas of your emitters (Init Size, Velocity, Acceleration, Drag, etc.) and try to save messing with color until last. I haven’t found much difference between working through one element (Like Init Size) across all your emitters, vs going through one emitter entirely and moving on to the next, so you’ll just have to find what works best for you.
Once you have your main effect blocked out with your variations in emitter values, take a look at the whole and now start filling it in with secondary elements like sparks or lingering smoke, small bits of debris, etc and go through that same process with these new elements.
Now that the bulk of the effect’s timing and silhouette is what you want it, go through and start making refined and more detailed textures for your effect (higher resolution stuff, more detailed noise, more stylized hand drawn textures). Add more geo to your meshes if they need it, refine your simulations (but follow that same workflow, slowly build out more elements of it and raise the voxel and resolution size until you’re happy with it). Apply these textures and see if you need to make any small adjustments to emitters and values to pull it back in line. Once you’re happy with textures, go ahead and make any material adjustments to push the detail. Add in additional panning textures, UV distortion, and extra stuff like soft particle intersection.
With all that, I’d say take one final look a the colors of your particles and see if anything needs adjusting to tighten the effect up to that final polish.
So quick recap: try and think in terms of blocking in every aspect of your effects, until you get a personal feel for how best you work and create things. I hope that’s helpful and not too overwhelming or useless!