The Full Stack Software Engineer is responsible for delivering high quality, maintainable, and secure software across modern backend and frontend stacks. This role requires strong proficiency in contemporary programming languages, including Go and TypeScript/JavaScript (or equivalent technologies), with the ability to read, write, debug, and evaluate production grade code independently. Engineers in this role use AI coding assistants as a force multiplier while retaining full ownership of all resulting code. They must be able to decompose technical work, provide clear guidance to AI tools, and rigorously validate and revise generated output. Passive prompt and accept workflows are insufficient. A core responsibility of this role is code review and quality assurance. The engineer must be comfortable performing detailed, line by line review of both self authored and generated code, identifying defects, design issues, and unnecessary complexity. They should demonstrate practical knowledge of common software design patterns and architecture principles, including interfaces, dependency injection, factory and adapter/gateway patterns, and layered system design. They apply DRY, SOLID, and reuse first principles consistently. This role spans full stack development: backend services, data models, APIs, and modern web front ends. The engineer must maintain clear and stable contracts between client and server, ensuring well designed interactions across the stack. Work should reflect an understanding of cloud native fundamentals, including identity and access management, storage, databases, messaging, search, and containerized services. Solutions must be built against abstractions to remain portable across cloud and on premises environments. Strong data modeling skills are required, including experience with relational databases, schema creation, and migrations. The engineer must design for multi tenant security from the outset, understanding authentication versus authorization, isolation boundaries, least privilege access, and data protection considerations. The role also requires a commitment to continuous quality through unit, integration, and automated testing; use of linters, static analysis, and CI quality gates; and validation of changes in a running environment. Engineers are expected to adhere to established project standards in structure, naming, logging, error handling, and API design, introducing new patterns only when justified and reviewed. Effective problem solving is essential. The engineer must break large requests into verifiable increments, identify the correct system layer for each change, and communicate decisions clearly to peers and reviewers. Experience working in disconnected or constrained environments is important, including development without public internet access, use of private registries and pre approved dependencies, and deployment within isolated networks. Solutions must not rely on outbound SaaS, public container pulls, or live commercial AI services at runtime.
Stand Out From the Crowd
Upload your resume and get instant feedback on how well it matches this job.
Job Type
Full-time
Career Level
Mid Level
Education Level
No Education Listed