A major contributor to software development projects. Performs software programming along with other software development lifecycle activities (requirements, design, test, documentation, 2nd and 3rd level support). Has experience with and is proficient with basic programming concepts within standard architectural patterns. Has limited experience with more advance architectural patterns (MVC, MVP, MVVM), Service Oriented Architecture, SOLID programming concepts, and application security. Generally relies on instructions and guidance from senior project team members and from direct supervisors but may also rely on experience and judgment to plan and accomplish goals.