Back to Search
A Middle Software Engineer is someone with the intermediate level of theoretical and practical knowledge and experience in at least one technical field. A notable understanding of common algorithms, and data structures is crucial. Typically, this level of expertise is acquired with more than a year of experience.
Responsibilities
- Actively participate and co-operate in established development processes such as SCRUM, Kanban, Waterfall, etc.
- Follow engineering practices set by the project
- Identify dependencies and challenges in individual tasks
- Participate in the creation of module design and its components
- Understand and apply various design patterns
- Read and understand complex software engineering diagrams
- Write concise and accessible technical documentation
Requirements
- Possesses 1+ years of software engineering experience
- Can work independently without direct supervision
- Capable of providing practical solutions to engineering problems and taking ownership of the implementation
- Understands and follows the principles of code quality and has basic knowledge of the Software Quality Control process
- Able to participate in Code Reviews as a reviewer
- Has a knowledge of EPAM ENGX practices
- Can actively participate in project meetings and interact with the customer under supervision
- Proficient in English (minimum B1 level)
- Able to communicate proficiently in the Customer's Communication Language
Benefits
- International projects with top brands
- Work with global teams of highly skilled, diverse peers
- Healthcare benefits
- Employee financial programs
- Paid time off and sick leave
- Upskilling, reskilling and certification courses
- Unlimited access to the LinkedIn Learning library and 22,000+ courses
- Global career opportunities
- Volunteer and community involvement opportunities
- EPAM Employee Groups
- Award-winning culture recognized by Glassdoor, Newsweek and LinkedIn