Avoiding redundant code using tkinter
Don't use a dictionary. You can just refer to the attrs of a class by their name. Something like:
import tkinter as tk
from tkinter import filedialog
from typing import Optional


class View:
    def __init__(self, parent: tk.Tk):
        self.parent = parent
        self.working_dir: Optional[str] = None
        self.dest_dir: Optional[str] = None

        self.menu('Working', 'working_dir')
        self.menu('Dest.', 'dest_dir')

    def menu(self, title: str, attr: str):
        def browse():
            setattr(self, attr, tk.filedialog.askdirectory())

        button = tk.Button(
            self.parent,
            text=f'Choose {title} Folder',
            command=browse,
        )
        button.pack()


if __name__ == '__main__':
    root = tk.Tk()
    View(root)
    root.mainloop()

Notes:

Do not add a () suffix to your class
Do not assign those buttons as members on your class
Centralize the creation of the buttons and the associated command
For the command handler, use a simple closure
To target a specific member variable, accept a parameter that's used with setattr
Use type hints