Software Engineer - Cloud Architecture & Legacy Modernization
📍 Job Overview
- Job Title: Software Engineer - Cloud Architecture & Legacy Modernization
- Company: Raintree Systems, Inc
- Location: Tartu or Tallinn, Estonia
- Job Type: Full-Time
- Category: Software Engineer (Backend)
- Date Posted: June 20, 2025
🚀 Role Summary
Raintree Systems is seeking an experienced Software Engineer with a focus on cloud architecture and legacy modernization to join their growing development team. The ideal candidate will have a minimum of two years of work experience and be comfortable working with both front-end and back-end technologies. This role involves developing and maintaining enterprise healthcare management systems, supporting existing systems, and contributing to CI/CD pipelines using AWS CDK. The successful candidate will also collaborate with cross-functional teams to deliver high-quality software solutions and participate in agile ceremonies.
💻 Primary Responsibilities
- Develop and Maintain Enterprise Healthcare Management Systems: Design, develop, and maintain enterprise-level healthcare management systems using modern technologies and best practices.
- Maintain Legacy Systems: Work on legacy systems built in the Delphi programming language, with training provided for those without prior experience.
- Develop a New Generation of Software Systems: Contribute to the development of a new generation of software systems using TypeScript and NodeJS.
- Support Existing Systems and CI/CD Pipelines: Maintain existing systems and contribute to CI/CD pipelines using AWS CDK to ensure efficient and reliable software deployment.
- Maintain AWS Cloud Services: Manage and maintain AWS cloud services to ensure optimal performance and security.
- Collaborate with Cross-Functional Teams: Work closely with cross-functional teams to deliver high-quality software solutions that meet business requirements and user needs.
- Develop and Maintain Software Modules: Create and maintain software modules that connect user interfaces, servers, and databases to ensure seamless functionality.
- Work Independently on Medium-to-High Complexity Tasks: Tackle medium-to-high complexity tasks independently, escalating issues as needed to ensure project success.
- Collaborate with Internal Teams and External Stakeholders: Gather requirements and brainstorm solutions with internal teams and external stakeholders to drive project success.
- Participate in Agile Ceremonies and Code Reviews: Contribute to agile ceremonies and code reviews to ensure high-quality software development and continuous improvement.
- Apply Software Design Patterns and Best Practices: Utilize software design patterns and best practices in solution development to ensure scalability, maintainability, and performance.
🎓 Skills & Qualifications
Education: A bachelor's degree is preferred but not required.
Experience: A minimum of two years of work experience in software engineering is required.
Required Skills:
- Knowledge of both front-end and back-end technologies and their interactions.
- Proficiency in at least one front-end and back-end programming language (e.g., Java, JavaScript, TypeScript, HTML, SQL).
- Familiarity with version control systems (SVN, Git).
- Willingness to learn the Delphi programming language.
- Demonstrated critical thinking in software solutions.
- Ability to convey ideas through simple diagrammatic representations.
- Clear written and verbal communication skills.
Preferred Skills:
- Experience with cloud architecture and AWS services.
- Familiarity with CI/CD pipelines and deployment automation.
- Knowledge of software design patterns and best practices.
📊 Web Portfolio & Project Requirements
Portfolio Essentials:
- Demonstrate your ability to develop and maintain enterprise-level software systems.
- Showcase your experience with legacy systems and modernization efforts.
- Highlight your proficiency in cloud architecture and AWS services.
- Display your understanding of software design patterns and best practices.
Technical Documentation:
- Provide code quality documentation, including commenting and documentation standards.
- Include version control, deployment processes, and server configuration details.
- Demonstrate your understanding of testing methodologies, performance metrics, and optimization techniques.
💵 Compensation & Benefits
Salary Range: The salary range for this role is not explicitly stated in the provided job description. However, based on industry standards for software engineers with similar experience and regional cost of living, the estimated salary range for this role in Estonia is €2,500 - €4,000 per month (gross).
Benefits:
- Paid bonus vacation during Christmas week.
- Company, team, and personal performance-based bonus pay.
- Health and sports bonus (Stebby).
- Full salary during military exercises.
- Budget for personal training.
- Beautiful office space in Tartu with flexible work arrangements.
- Dedicated mentorship and ongoing support from senior engineers.
🎯 Team & Company Context
Company Culture:
- Raintree Systems offers a flexible hybrid model that balances collaboration and autonomy.
- During the first 3-6 months, new hires are expected to spend time in the Tartu office to build relationships, understand the codebase, and integrate with the team.
- After the onboarding period, employees have the flexibility to work remotely while maintaining regular in-person collaboration.
Why Join Us:
- Work on software that directly improves people's lives with better healthcare outcomes.
- Collaborative team environment with opportunities for growth.
- Tight-knit team with team events and a modern development practices culture.
- Competitive compensation and benefits package.
📈 Career & Growth Analysis
Web Technology Career Level: This role is suitable for an experienced software engineer with a focus on cloud architecture and legacy modernization, with a minimum of two years of work experience.
Reporting Structure: The software engineer will report directly to the senior engineering team and collaborate with cross-functional teams to deliver high-quality software solutions.
Technical Impact: The successful candidate will have a significant impact on the development and maintenance of enterprise healthcare management systems, ensuring optimal performance, security, and user experience.
Growth Opportunities:
- Technical Growth: Develop expertise in cloud architecture, AWS services, and modern software development practices.
- Leadership Potential: Contribute to technical decision-making, architecture design, and team mentoring as you gain experience and demonstrate leadership skills.
- Career Progression: Progress to senior software engineer or technical lead roles as you gain experience and expand your technical expertise.
🌐 Work Environment
Office Type: The office is located in Tartu, Estonia, with a flexible hybrid work arrangement that balances on-site collaboration and remote work.
Office Location: The office is situated in the heart of Tartu, Estonia, with easy access to public transportation and nearby amenities.
Workspace Context:
- Collaborative workspace with dedicated areas for team meetings and brainstorming sessions.
- Modern development tools, multiple monitors, and testing devices available to ensure optimal productivity.
- Access to company-specific resources and documentation to facilitate onboarding and knowledge sharing.
Work Schedule: The work schedule is generally Monday to Friday, with flexible hours to accommodate individual needs and project deadlines.
📄 Application & Technical Interview Process
Interview Process:
- Technical Phone Screen: A brief phone or video call to assess your technical skills and cultural fit.
- On-site Technical Assessment: An on-site technical assessment to evaluate your problem-solving skills, coding abilities, and system design capabilities.
- Behavioral Interview: A behavioral interview to discuss your career goals, work experience, and cultural fit.
- Final Decision: A final decision based on your technical skills, cultural fit, and alignment with the team's needs.
Portfolio Review Tips:
- Tailor your portfolio to showcase your experience with enterprise-level software systems, cloud architecture, and legacy modernization.
- Highlight your proficiency in AWS services, software design patterns, and best practices.
- Include live project demonstrations and responsive design examples to showcase your technical skills.
Technical Challenge Preparation:
- Familiarize yourself with the company's technology stack, including TypeScript, NodeJS, AWS, and Delphi.
- Practice coding challenges and system design exercises to prepare for the technical assessment.
- Brush up on your knowledge of software design patterns, best practices, and cloud architecture principles.
ATS Keywords: (Provided in the ATS Keywords section below)
🛠 Technology Stack & Web Infrastructure
Frontend Technologies:
- TypeScript
- ReactJS
- Redux
- HTML5
- CSS3
Backend & Server Technologies:
- NodeJS
- ExpressJS
- AWS Lambda
- AWS DynamoDB
- AWS S3
- AWS RDS
- AWS API Gateway
- Delphi (for legacy systems)
Development & DevOps Tools:
- Git
- AWS CDK
- Jenkins
- Docker
- Kubernetes
- Terraform
Database Technologies:
- PostgreSQL
- MySQL
- MongoDB
- AWS DynamoDB
Monitoring & Logging Tools:
- ELK Stack (Elasticsearch, Logstash, Kibana)
- AWS CloudWatch
- Prometheus
Cloud Platform:
- AWS (Amazon Web Services)
ATS Keywords:
- Programming Languages: TypeScript, JavaScript, NodeJS, Delphi, SQL
- Web Frameworks: ExpressJS, ReactJS, Redux
- Cloud Platforms: AWS (Amazon Web Services)
- Server Technologies: NodeJS, ExpressJS, AWS Lambda, AWS API Gateway
- Databases: PostgreSQL, MySQL, MongoDB, AWS DynamoDB, AWS RDS
- Version Control: Git
- CI/CD Pipelines: Jenkins, AWS CDK, Docker, Kubernetes, Terraform
- Monitoring & Logging: ELK Stack (Elasticsearch, Logstash, Kibana), AWS CloudWatch, Prometheus
- Soft Skills: Critical Thinking, Problem Solving, Communication, Collaboration, Teamwork, Leadership
- Industry Terms: Healthcare Management Systems, Enterprise Software, Legacy Modernization, Cloud Architecture, AWS Services, Software Design Patterns, Best Practices
💡 Interview Preparation
Technical Questions:
- Technical Question 1: Explain the architecture of a complex web application, highlighting the use of cloud services, databases, and server technologies.
- Technical Question 2: Describe your experience with legacy systems and modernization efforts, including challenges faced and solutions implemented.
- Technical Question 3: Demonstrate your understanding of software design patterns and best practices by walking through a real-world example and explaining your decision-making process.
Company & Culture Questions:
- Technical Question 4: Explain how you approach learning new technologies and staying up-to-date with industry trends, with a focus on cloud architecture and AWS services.
- Technical Question 5: Describe your experience working in a collaborative team environment and how you contribute to a positive and productive work culture.
- Technical Question 6: Explain how you approach problem-solving and decision-making in a fast-paced, dynamic work environment, with a focus on software development and project management.
Portfolio Presentation Strategy:
- Presentation Strategy 1: Begin with an overview of your portfolio, highlighting your experience with enterprise-level software systems, cloud architecture, and legacy modernization.
- Presentation Strategy 2: Walk through your most relevant projects, focusing on the technical challenges faced, solutions implemented, and the outcomes achieved.
- Presentation Strategy 3: Demonstrate your understanding of software design patterns and best practices by explaining your approach to architecture, performance optimization, and user experience design.
- Presentation Strategy 4: Showcase your ability to work collaboratively with cross-functional teams by discussing your experience with brainstorming sessions, code reviews, and project management.
📝 Enhancement Note: The provided interview preparation tips are tailored to the specific role and company context, with a focus on cloud architecture, legacy modernization, and software design patterns.
Application Requirements
A minimum of two years of work experience in software engineering is required, along with knowledge of both front-end and back-end technologies. Familiarity with version control systems and a willingness to learn Delphi are also important.