Size of code uploaded to lambda vs layers

Hi,

I am looking for some advice. I come from a spring\java background and so when creating serverless services like customers I have used an MVC pattern (minus the V unless you count the json output) with an api module which then hands off to a controller which uses a number of services, which in turn use DAO, and model classes, I am actually using python to write the serverless API’s.

I always liked this pattern but it does whilst I have a well defined layout to my source code, the size of my source being uploaded is currently around 36k and for every function uploaded from the serverless file it loads all of the source code (even if some of it isnt used).

Is anyone else using this pattern is my first question, I originally saw it recommended on one of the AWS learning videos and as I was already used to that pattern went for it, but I do not see it listed as a serverless pattern anywhere else.

Now my main question is, given for any lambda being executed the entire set of code needs to be loaded, but I also loading a requirements layer in the order of MB’s, does this actually make any difference to load time? 36k is pretty small in comparison to the 7MB layer I also need to attach for any function to be able to run.