Company Overview:
Meight is a seed-stage tech startup based in Portugal that just raised €3.5 million to make a dent in the Road Freight industry. We’re building the first data-powered platform for Road Freight, a vertical software solution for small Road Freight carriers.
Road Freight is the largest distribution channel in the world. The $5 trillion industry is expected to double in the next 30 years. Road Freight has been a key enabler for humanity for the last century and is now facing disruptive challenges in sustainability, efficiency, and technology adoption.
We help Road Freight teams make a leap from being low-value employees spending time putting out fires and being single points of failure to adding value to operations where they interact with AI systems to build up company knowledge and market differentiation. A turn-key SaaS solution with no implementation costs and no lengthy ad-hoc customizations that allows small carriers to become digital at a fraction of the cost of an on-premise ERP or Transport Management System (TMS).
Position Overview:
We are seeking a talented and ambitious Software Engineer with a passion to solve problems whose impact will directly affect the lives of millions of people around the world.
As a Software Engineer at Meight, you will be responsible for designing, developing, and maintaining end-to-end solutions that meet our business needs. You will have the opportunity to work on a diverse range of projects, collaborating with cross-functional teams to deliver high-quality software products.
We are looking for experience in the software engineering realm, and at the stage we are at, we do prefer generalists instead of specialists. Talk with us if you have experience in one or more of the following: backend, frontend (web and/or mobile), infrastructure, and data.
Responsibilities:
Backend/Frontend:
- Ensure the responsiveness and efficiency of applications.
- Design, develop, and maintain scalable and secure applications.
- Collaborate with front-end and back-end developers to implement user-facing features and server-side logic.
- Develop intuitive and visually appealing user interfaces using modern web technologies.
- Collaborate with UI/UX designers to implement designs and optimize user experiences.
- Ensure cross-browser compatibility and responsive design.
- Build and maintain server-side logic using languages such as Node.js, Python, Java, Go Lang, …
- Implement RESTful APIs and integrate with external services.
- Design and optimize database schemas for performance and scalability.
- Work with databases such as MySQL, PostgreSQL, or Cassandra to store and retrieve data.
- Optimize database queries for efficiency and performance.
Data:
- Design, implement, and maintain scalable and efficient data pipelines for the collection, processing, and storage of large volumes of data and/or heavy computations.
- Collaborate with data scientists, analysts, and other stakeholders to understand data requirements and ensure the availability of required datasets.
- Design and optimize database structures, including both relational and NoSQL databases, to support the storage and retrieval of structured and unstructured data.
- Implement and maintain data warehousing solutions for analytics and reporting.
- Integrate data from various sources, ensuring data quality, consistency, and accuracy.
- Implement ETL (Extract, Transform, Load) processes to transform raw data into actionable insights.
- Identify and address performance bottlenecks in data pipelines and database queries.
- Implement optimizations to enhance the speed and efficiency of data processing.
Infrastructure:
- Develop and maintain infrastructure as code using tools such as Terraform, Ansible, or CloudFormation.
- Ensure that the infrastructure is version-controlled, reproducible, and scalable.
- Automate routine operational tasks to improve efficiency and reduce manual intervention.
- Implement orchestration solutions for managing complex workflows and deployments.
- Implement and manage monitoring solutions to track system performance, identify issues, and ensure high availability.
- Configure and manage centralized logging systems to facilitate troubleshooting and analysis.
- Collaborate with security teams to implement and enforce security best practices.
- Ensure compliance with industry standards and regulations related to infrastructure and deployment.
Collaboration and Communication:
- Actively engage with product managers, designers, and other stakeholders to gather comprehensive project requirements. Participate in meetings, workshops, and discussions to gain insights into the project's goals, scope, and user needs. By fostering an open and collaborative environment, you contribute to a shared understanding of project objectives.
- Establish iterative feedback loops with product managers and designers throughout the design and development process. This ongoing collaboration allows for the refinement of project requirements based on evolving insights, changes in priorities, or emerging user needs.
- Effectively communicate technical concepts and solutions to both technical and non-technical team members. Tailor your communication style to the audience, ensuring that complex technical details are presented in a clear and understandable manner.
- Encourage open discussions and Q&A sessions to address any uncertainties or questions team members may have about technical aspects. This creates a space for transparent communication and ensures that everyone is aligned with the technical direction of the project.
Code Review and Testing:
- Conduct thorough code reviews to ensure the quality of the codebase. Evaluate the code for correctness, efficiency, and adherence to coding standards. This process helps identify potential bugs, security vulnerabilities, and areas for improvement.
- Use code reviews as an opportunity for knowledge sharing within the development team. Provide constructive feedback to developers, sharing best practices, alternative approaches, and insights to enhance their coding skills.
- Integrate automated testing into the CI/CD pipeline to enable continuous validation of code changes. Automated testing in CI ensures that new code is thoroughly tested before being merged into the main codebase.
- Write comprehensive unit tests to cover critical paths, edge cases, and potential failure points. Aim for high test coverage to minimize the risk of regressions and enhance the overall stability of the codebase.
- Use performance tests to identify and address performance bottlenecks. This collaborative effort with performance testing teams ensures that the software meets or exceeds performance expectations under various conditions.
Qualifications:
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- Proven experience as a Software Engineer, with a strong portfolio of completed projects.
- Familiarity with version control systems (Git) and collaborative development workflows.
Benefits:
- Competitive compensation package (up to €50,000 gross + stock options + performance-based bonuses)
- Comprehensive health and wellness benefits.
- Professional development opportunities and mentorship programs.
- A dynamic and inclusive work environment with a focus on innovation
- Work-from-anywhere policy
If you are a passionate Software Engineer looking to contribute to cutting-edge projects and make a significant impact, we invite you to apply. Join Meight and be part of a team that is shaping the future of Road Freight.